diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java index 21ead50c2c..c4da9a27ca 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java @@ -2097,11 +2097,15 @@ final class SelectQueryImpl extends AbstractResultQuery imp } private final boolean containsTable(Table table, Table contained) { - if (table instanceof JoinTable) + Table alias; + + if ((alias = Tools.aliased(table)) != null) + return containsTable(alias, contained); + else if ((alias = Tools.aliased(contained)) != null) + return containsTable(table, alias); + else if (table instanceof JoinTable) return containsTable(((JoinTable) table).lhs, contained) || containsTable(((JoinTable) table).rhs, contained); - else if (table instanceof TableAlias) - return containsTable(((TableAlias) table).alias.wrapped, contained); else return contained.equals(table); }