private final void wrappingParenthesis(RenderContext context, String parenthesis) { switch (context.configuration().dialect()) { // Sybase ASE, Derby, Firebird and SQLite have some syntax issues with unions. // Check out https://issues.apache.org/jira/browse/DERBY-2374 /* [pro] xx xxxx xxxxxxx xxxx xxxx xx [/pro] */ case DERBY: case FIREBIRD: case SQLITE: // [#288] MySQL has a very special way of dealing with UNION's // So include it as well case MARIADB: case MYSQL: return; } if (")".equals(parenthesis)) { context.formatIndentEnd() .formatNewLine(); } context.sql(parenthesis); if ("(".equals(parenthesis)) { context.formatIndentStart() .formatNewLine(); } }
.declareTables(true) .sql('(') .formatIndentStart(e1.indent) .formatIndentStart() .formatNewLine() .visit(e1.joinNode.joinTree())
.formatIndentStart() .formatNewLine();
private void toSQLTable(RenderContext context, Table<?> table) { // [#671] Some databases formally require nested JOINS on the right hand // side of the join expression to be wrapped in parentheses (e.g. MySQL). // In other databases, it's a good idea to wrap them all boolean wrap = table instanceof JoinTable && (table == rhs || asList().contains(context.configuration().dialect().family())); if (wrap) { context.sql("(") .formatIndentStart() .formatNewLine(); } context.visit(table); if (wrap) { context.formatIndentEnd() .formatNewLine() .sql(")"); } }
context.formatIndentStart() .formatNewLine();
@Override public final void toSQL(RenderContext context) { // If this is already a subquery, proceed if (context.subquery()) { context.formatIndentStart() .formatNewLine() .visit(query) .formatIndentEnd() .formatNewLine(); } else { context.subquery(true) .formatIndentStart() .formatNewLine() .visit(query) .formatIndentEnd() .formatNewLine() .subquery(false); } }
.formatIndentStart() .formatNewLine();
context.formatIndentStart() .formatNewLine();
@Override public final void toSQL(RenderContext context) { // If this is already a subquery, proceed if (context.subquery()) { context.sql("(") .formatIndentStart() .formatNewLine() .visit(query) .formatIndentEnd() .formatNewLine() .sql(")"); } else { context.sql("(") .subquery(true) .formatIndentStart() .formatNewLine() .visit(query) .formatIndentEnd() .formatNewLine() .subquery(false) .sql(")"); } } }
@Override public final void toSQL(RenderContext context) { boolean indent = (size() > 1); context.sql("("); if (indent) { context.formatIndentStart(); } String separator = ""; for (Field<?> field : values()) { context.sql(separator); if (indent) { context.formatNewLine(); } context.visit(field); separator = ", "; } if (indent) { context.formatIndentEnd() .formatNewLine(); } context.sql(")"); }
@Override public final void toSQL(RenderContext context) { // If this is already a subquery, proceed if (context.subquery()) { context.keyword(operator.toSQL()) .sql(" (") .formatIndentStart() .formatNewLine() .visit(query) .formatIndentEnd() .formatNewLine() .sql(")"); } else { context.keyword(operator.toSQL()) .sql(" (") .subquery(true) .formatIndentStart() .formatNewLine() .visit(query) .formatIndentEnd() .formatNewLine() .subquery(false) .sql(")"); } }
@Override public final void toSQL(RenderContext context) { // If this is already a subquery, proceed if (context.subquery()) { context.visit(field) .sql(" ") .keyword(comparator.toSQL()) .sql(" (") .formatIndentStart() .formatNewLine() .visit(query) .formatIndentEnd() .formatNewLine() .sql(")"); } else { context.visit(field) .sql(" ") .keyword(comparator.toSQL()) .sql(" (") .subquery(true) .formatIndentStart() .formatNewLine() .visit(query) .formatIndentEnd() .formatNewLine() .subquery(false) .sql(")"); } }
@Override public final void toSQL(RenderContext ctx) { // If this is already a subquery, proceed if (ctx.subquery()) { ctx.keyword(quantifier.toSQL()) .sql(" (") .formatIndentStart() .formatNewLine() .visit(delegate(ctx.configuration())) .formatIndentEnd() .formatNewLine() .sql(")"); } else { ctx.keyword(quantifier.toSQL()) .sql(" (") .subquery(true) .formatIndentStart() .formatNewLine() .visit(delegate(ctx.configuration())) .formatIndentEnd() .formatNewLine() .subquery(false) .sql(")"); } }
final void toSQLReferenceKeys(RenderContext context) { boolean indent = (size() > 1); context.sql("("); if (indent) { context.formatIndentStart(); } // [#989] Avoid qualifying fields in INSERT field declaration boolean qualify = context.qualify(); context.qualify(false); String separator = ""; for (Field<?> field : keySet()) { context.sql(separator); if (indent) { context.formatNewLine(); } context.visit(field); separator = ", "; } context.qualify(qualify); if (indent) { context.formatIndentEnd() .formatNewLine(); } context.sql(")"); }
context.formatIndentStart() .formatSeparator() .start(translatedClause)
select(list(field("*"))).from(((Table<?>) wrapped).as(alias)); context.sql("(").formatIndentStart().formatNewLine() .visit(select).formatIndentEnd().formatNewLine() .sql(")"); select(field("*")).from(((Table<?>) wrapped).as(alias))); context.sql("(").formatIndentStart().formatNewLine() .visit(select).formatIndentEnd().formatNewLine() .sql(")");
context.formatIndentStart() .formatNewLine() .subquery(true)
.formatIndentStart() .formatNewLine() .subquery(true)
.declareTables(true) .keyword("using").sql(" ") .formatIndentStart() .formatNewLine(); context.data(DATA_WRAP_DERIVED_TABLES_IN_PARENTHESES, true);