addExistsExpression method
Implementation
void addExistsExpression(ExistsExpression e) {
final outerHasMultipleTables = statement.hasMultipleTables;
final outerIgnoreResultSet = _ignoreResultSet;
// Inside this subquery, we want to reference columns with their table
// to avoid ambiguities when an outer table is referenced.
statement.hasMultipleTables = true;
writeExpression(e, () {
if (e.not) {
statement.buffer.write('NOT ');
}
statement.buffer.write('EXISTS ');
statement.buffer.write('(');
_expressionPrecedence = null; // No longer an expression context
_ignoreResultSet = true;
e.select.compileWith(this);
statement.buffer.write(')');
});
statement.hasMultipleTables = outerHasMultipleTables;
_ignoreResultSet = outerIgnoreResultSet;
}