From 7ed16deac81dd04ca6f3ed3a3ee9b4e3f3fa7918 Mon Sep 17 00:00:00 2001 From: t8y2 <1156263951@qq.com> Date: Sun, 7 Jun 2026 22:57:04 +0800 Subject: [PATCH] fix(core): skip derived column aliases for SQLite and DuckDB SQLite and DuckDB do not support the `alias(col1, col2)` subquery column naming syntax, which caused "near '(': syntax error" when sorting query results on these databases. --- crates/dbx-core/src/query_result_sql.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/crates/dbx-core/src/query_result_sql.rs b/crates/dbx-core/src/query_result_sql.rs index 51ebd26709..fd777fb8e0 100644 --- a/crates/dbx-core/src/query_result_sql.rs +++ b/crates/dbx-core/src/query_result_sql.rs @@ -225,7 +225,9 @@ pub fn build_sorted_query_sql(options: SortedQuerySqlOptions) -> QuerySqlBuildRe } let aliases = build_derived_column_aliases(&options.result_columns); - let use_derived_column_aliases = options.database_type != Some(DatabaseType::Mysql); + let use_derived_column_aliases = options.database_type != Some(DatabaseType::Mysql) + && options.database_type != Some(DatabaseType::Sqlite) + && options.database_type != Some(DatabaseType::DuckDb); let sort_alias = if use_derived_column_aliases { aliases .get(options.column_index)