Changeset: d48164e0e4d4 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/d48164e0e4d4
Modified Files:
        sql/server/rel_select.c
Branch: default
Log Message:

merged with aug2024


diffs (32 lines):

diff --git a/sql/server/rel_select.c b/sql/server/rel_select.c
--- a/sql/server/rel_select.c
+++ b/sql/server/rel_select.c
@@ -1337,9 +1337,8 @@ bool group_by_pk_project_uk_cond(mvc* sq
                if (pki && pki->columns->cnt == 1 && inner->r && ((list*) 
inner->r)->cnt == 1) {
                        /* for now only check simple case where primary key and 
group by expression is a single column*/
                        sql_exp* gbe = ((list*) inner->r)->h->data;
-                       assert(gbe->type == e_column);
                        sql_column* pkc = ((sql_kc *)pki->columns->h->data)->c;
-                       if (strcmp(gbe->alias.name, pkc->base.name) == 0) {
+                       if (gbe->type == e_column && strcmp(gbe->alias.name, 
pkc->base.name) == 0) {
                                node *n;
                                for (n = ukil->h; n; n = n->next){
                                        sql_idx* uki = n->data;
diff --git a/sql/test/BugTracker-2024/Tests/7535-create-view-groupby-func.test 
b/sql/test/BugTracker-2024/Tests/7535-create-view-groupby-func.test
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2024/Tests/7535-create-view-groupby-func.test
@@ -0,0 +1,5 @@
+statement ok
+CREATE TABLE t0(c0 VARCHAR, c1 INTEGER, PRIMARY KEY(c0))
+
+statement error 42000!SELECT: cannot use non GROUP BY column 't0.c0' in query 
results without an aggregate function
+CREATE VIEW v0(c0) AS SELECT ('a'||t0.c0) FROM t0 GROUP BY (CASE t0.c1 WHEN 
t0.c1 THEN 'a' END )
diff --git a/sql/test/BugTracker-2024/Tests/All 
b/sql/test/BugTracker-2024/Tests/All
--- a/sql/test/BugTracker-2024/Tests/All
+++ b/sql/test/BugTracker-2024/Tests/All
@@ -61,3 +61,4 @@ 7513-uri-authority-parse-issue
 7514-wrong-window-function
 7524-right-outer-join
 7528-jarowinkler-null
+7535-create-view-groupby-func
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to