diff --git a/ibis/backends/base/sql/compiler/extract_subqueries.py b/ibis/backends/base/sql/compiler/extract_subqueries.py
index <HASH>..<HASH> 100644
--- a/ibis/backends/base/sql/compiler/extract_subqueries.py
+++ b/ibis/backends/base/sql/compiler/extract_subqueries.py
@@ -39,7 +39,8 @@ class ExtractSubqueries:
         elif isinstance(node, ops.Join):
             self.visit_join(expr)
         elif isinstance(node, ops.PhysicalTable):
-            self.visit_physical_table(expr)
+            # do nothing, because physical tables can be referred to by name
+            pass
         elif isinstance(node, ops.TableNode):
             for arg in node.flat_args():
                 if isinstance(arg, ir.Table):
@@ -58,9 +59,6 @@ class ExtractSubqueries:
         self.visit(node.left)
         self.visit(node.right)
 
-    def visit_physical_table(self, _):
-        return
-
     def visit_Exists(self, expr):
         node = expr.op()
         self.visit(node.foreign_table)
chore: remove visit_physical_table in favor of pass