From 645a1d35e8376cf372331d3ce45000cd96431261 Mon Sep 17 00:00:00 2001 From: Nybkox Date: Tue, 14 Jan 2025 14:32:22 +0100 Subject: [PATCH] feat: add omitTableAliases to sql dialect --- packages/datalib/src/GridDisplay.ts | 15 +++++++++------ packages/types/dialect.d.ts | 1 + 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/packages/datalib/src/GridDisplay.ts b/packages/datalib/src/GridDisplay.ts index b77995d9c..317d9151c 100644 --- a/packages/datalib/src/GridDisplay.ts +++ b/packages/datalib/src/GridDisplay.ts @@ -253,7 +253,7 @@ export abstract class GridDisplay { orCondition.conditions.push( _.cloneDeepWith(condition, (expr: Expression) => { if (expr.exprType == 'placeholder') { - return this.createColumnExpression(column, { alias: 'basetbl' }, undefined, 'filter'); + return this.createColumnExpression(column, {}, undefined, 'filter'); } }) ); @@ -584,7 +584,7 @@ export abstract class GridDisplay { } return { exprType: 'column', - alias: alias || col.columnName, + ...(!this.dialect.omitTableAliases && { alias: alias || col.columnName }), source, ...col, }; @@ -597,9 +597,9 @@ export abstract class GridDisplay { commandType: 'select', from: { name: _.pick(name, ['schemaName', 'pureName']), - alias: 'basetbl', + ...(!this.dialect.omitTableAliases && { alias: 'basetbl' }), }, - columns: columns.map(col => this.createColumnExpression(col, { alias: 'basetbl' }, undefined, 'view')), + columns: columns.map(col => this.createColumnExpression(col, {}, undefined, 'view')), orderBy: this.driver?.requiresDefaultSortCriteria ? [ { @@ -611,7 +611,10 @@ export abstract class GridDisplay { : null, }; const displayedColumnInfo = _.keyBy( - this.columns.map(col => ({ ...col, sourceAlias: 'basetbl' })), + this.columns.map(col => ({ + ...col, + ...(!this.dialect.omitTableAliases && { sourceAlias: 'basetbl' }), + })), 'uniqueName' ); this.processReferences(select, displayedColumnInfo, options); @@ -639,7 +642,7 @@ export abstract class GridDisplay { ? x : { ...x, - source: { alias: 'basetbl' }, + ...(!this.dialect.omitTableAliases && { source: { alias: 'basetbl' } }), } ) : [ diff --git a/packages/types/dialect.d.ts b/packages/types/dialect.d.ts index c48d2a604..9e6b69549 100644 --- a/packages/types/dialect.d.ts +++ b/packages/types/dialect.d.ts @@ -44,6 +44,7 @@ export interface SqlDialect { omitForeignKeys?: boolean; omitUniqueConstraints?: boolean; omitIndexes?: boolean; + omitTableAliases?: boolean; sortingKeys?: boolean; // syntax for create column: ALTER TABLE table ADD COLUMN column