diff --git a/src/adapter/postgres.ts b/src/adapter/postgres.ts index b1e44806b3ac8eed7864872f0845c0302e4b76cc..4b8d63fc5c9127de093df08c4ec9c284a18125cd 100644 --- a/src/adapter/postgres.ts +++ b/src/adapter/postgres.ts @@ -465,11 +465,19 @@ export class PostgresAdapter extends Adapter { clauses: partial0.clauses.concat(partial1.clauses), materialized: false }); + const id = new View({ + metrics: mets.concat(dimMetrics), + dimensions: dims, + keys: keys, + origin: false, + clauses: partial0.clauses.concat(partial1.clauses), + materialized: false + }).id; const viewFrom = "(" + this.buildQuery(partial, [partial0, partial1]) + - ") AS view_" + partial0.id + partial1.id + "\n"; + ") AS view_" + id + "\n"; partialJoin.push({ - id: partial0.id + partial1.id, + id: id, from: viewFrom, dimMetrics: dimMetrics, metrics: mets, diff --git a/src/util/configParser.ts b/src/util/configParser.ts index 76bffe2af1c05070292c748fcc138fa96d9acb52..ea7133f9c20317439fe370f8fda7923e6ed5caba 100644 --- a/src/util/configParser.ts +++ b/src/util/configParser.ts @@ -185,7 +185,7 @@ export class ConfigParser { for (let i = 0; i < keys.length; ++i) { if (dimMap[keys[i]]) { - viewOpt.keys.push(dimMap[opts.dimensions[i]]); + viewOpt.keys.push(dimMap[opts.keys[i]]); } else {