From 19a0eee9b41cd6303a16c4bc3b9aae5cb76d8040 Mon Sep 17 00:00:00 2001 From: Pranav C Date: Tue, 19 Apr 2022 12:08:42 +0530 Subject: [PATCH] fix: wrap nested add update query select part to avoid issue when referencing same table Signed-off-by: Pranav C --- .../lib/dataMapper/lib/sql/BaseModelSqlv2.ts | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/packages/nocodb/src/lib/dataMapper/lib/sql/BaseModelSqlv2.ts b/packages/nocodb/src/lib/dataMapper/lib/sql/BaseModelSqlv2.ts index a8d04e28cc..4130bf2ff9 100644 --- a/packages/nocodb/src/lib/dataMapper/lib/sql/BaseModelSqlv2.ts +++ b/packages/nocodb/src/lib/dataMapper/lib/sql/BaseModelSqlv2.ts @@ -1864,10 +1864,13 @@ class BaseModelSqlv2 { { await this.dbDriver(childTable.table_name) .update({ - [childColumn.column_name]: this.dbDriver(parentTable.table_name) - .select(parentColumn.column_name) - .where(_wherePk(parentTable.primaryKeys, rowId)) - .first() + [childColumn.column_name]: this.dbDriver.from( + this.dbDriver(parentTable.table_name) + .select(parentColumn.column_name) + .where(_wherePk(parentTable.primaryKeys, rowId)) + .first() + .as('___cn_alias') + ) }) .where(_wherePk(childTable.primaryKeys, childId)); } @@ -1876,10 +1879,13 @@ class BaseModelSqlv2 { { await this.dbDriver(childTable.table_name) .update({ - [childColumn.column_name]: this.dbDriver(parentTable.table_name) - .select(parentColumn.column_name) - .where(_wherePk(parentTable.primaryKeys, childId)) - .first() + [childColumn.column_name]: this.dbDriver.from( + this.dbDriver(parentTable.table_name) + .select(parentColumn.column_name) + .where(_wherePk(parentTable.primaryKeys, childId)) + .first() + .as('___cn_alias') + ) }) .where(_wherePk(childTable.primaryKeys, rowId)); }