diff --git a/packages/backend-core/src/sql/sql.ts b/packages/backend-core/src/sql/sql.ts index a4828a9f4a..76d554d211 100644 --- a/packages/backend-core/src/sql/sql.ts +++ b/packages/backend-core/src/sql/sql.ts @@ -292,7 +292,7 @@ class InternalBuilder { const alias = this.getTableName(table) const schema = this.table.schema - if (!this.isFullSelectStatementRequired()) { + if (this.isFullSelectStatementRequired()) { return [this.knex.raw("??", [`${alias}.*`])] } // get just the fields for this table @@ -1543,9 +1543,6 @@ class InternalBuilder { // start building the query let query = this.qualifiedKnex() - if (resource?.fields) { - query = query.columns(resource?.fields) - } // handle pagination let foundOffset: number | null = null diff --git a/packages/server/src/api/controllers/row/utils/sqlUtils.ts b/packages/server/src/api/controllers/row/utils/sqlUtils.ts index af696c0758..9729018bf7 100644 --- a/packages/server/src/api/controllers/row/utils/sqlUtils.ts +++ b/packages/server/src/api/controllers/row/utils/sqlUtils.ts @@ -142,6 +142,7 @@ export async function buildSqlFieldList( let table: Table if (sdk.views.isView(source)) { table = await sdk.views.getTable(source.id) + fields = fields.filter(f => table.schema[f].type !== FieldType.LINK) } else { table = source }