Skip to content

Commit

Permalink
fix: Rewrite converts left outer to inner join due to filtering in wh…
Browse files Browse the repository at this point in the history
…ere: ensure `OR` is supported
  • Loading branch information
paveltiunov committed Apr 4, 2020
1 parent e51b72f commit 93a1250
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions packages/cubejs-schema-compiler/adapter/BaseQuery.js
Original file line number Diff line number Diff line change
Expand Up @@ -645,7 +645,7 @@ class BaseQuery {
j => {
const [cubeSql, cubeAlias, conditions] = this.rewriteInlineCubeSql(j.originalTo, true);
return `LEFT JOIN ${cubeSql} ${this.asSyntaxJoin} ${cubeAlias}
ON ${this.evaluateSql(j.originalFrom, j.join.sql)}${conditions ? ` AND ${conditions}` : ''}`;
ON ${this.evaluateSql(j.originalFrom, j.join.sql)}${conditions ? ` AND (${conditions})` : ''}`;
}
).concat(subQueryDimensions.map(d => this.subQueryJoin(d)));

Expand Down Expand Up @@ -776,7 +776,7 @@ class BaseQuery {
return `SELECT ${columnsForSelect} FROM (${this.keysQuery(primaryKeyDimension, filters)}) ${this.asSyntaxTable} ${this.escapeColumnName('keys')} ` +
`LEFT OUTER JOIN ${keyCubeSql} ${this.asSyntaxJoin} ${keyCubeAlias} ON
${this.escapeColumnName('keys')}.${primaryKeyDimension.aliasName()} = ${keyInMeasureSelect}
${keyCubeInlineLeftJoinConditions ? ` AND ${keyCubeInlineLeftJoinConditions}` : ''}` +
${keyCubeInlineLeftJoinConditions ? ` AND (${keyCubeInlineLeftJoinConditions})` : ''}` +
subQueryJoins +
(!this.safeEvaluateSymbolContext().ungrouped && this.groupByClause() || '');
}
Expand Down

0 comments on commit 93a1250

Please sign in to comment.