Skip to content

Commit 41323a9

Browse files
authored
feat(common): support NULLS {FIRST | LAST} (risingwavelabs#8485)
Signed-off-by: Richard Chien <[email protected]>
1 parent 6940ae4 commit 41323a9

File tree

37 files changed

+1199
-904
lines changed

37 files changed

+1199
-904
lines changed

dashboard/proto/gen/common.ts

Lines changed: 46 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dashboard/proto/gen/order.ts

Lines changed: 0 additions & 128 deletions
This file was deleted.

e2e_test/batch/aggregate/array_agg.slt.part

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ statement ok
22
SET RW_IMPLICIT_FLUSH TO true;
33

44
statement ok
5-
create table t(v1 varchar, v2 int, v3 int)
5+
create table t(v1 varchar, v2 int, v3 int);
66

77
query T
88
select array_agg(v1) from t;
@@ -18,10 +18,7 @@ select array_agg(v1) from t;
1818
{NULL}
1919

2020
statement ok
21-
delete from t;
22-
23-
statement ok
24-
insert into t values ('aaa', 1, 1), ('bbb', 0, 2), ('ccc', 0, 5), ('ddd', 1, 4)
21+
insert into t values ('aaa', 1, 1), ('bbb', 0, 2), ('ccc', 0, 5), ('ddd', 1, 4);
2522

2623
query T
2724
select b from (select unnest(a) from (select array_agg(v3) as v3_arr from t) g(a)) p(b) order by b;
@@ -30,16 +27,22 @@ select b from (select unnest(a) from (select array_agg(v3) as v3_arr from t) g(a
3027
2
3128
4
3229
5
30+
NULL
31+
32+
query T
33+
select array_agg(v1 order by v3 asc nulls first) from t;
34+
----
35+
{NULL,aaa,bbb,ddd,ccc}
3336

3437
query T
35-
select array_agg(v1 order by v3 desc) from t
38+
select array_agg(v1 order by v3 desc) from t;
3639
----
37-
{ccc,ddd,bbb,aaa}
40+
{NULL,ccc,ddd,bbb,aaa}
3841

3942
query T
40-
select array_agg(v1 order by v2 asc, v3 desc) from t
43+
select array_agg(v1 order by v2 asc nulls last, v3 desc) from t;
4144
----
42-
{ccc,bbb,ddd,aaa}
45+
{ccc,bbb,ddd,aaa,NULL}
4346

4447
statement ok
45-
drop table t
48+
drop table t;

e2e_test/batch/basic/index.slt.part

Lines changed: 53 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,23 +11,23 @@ statement ok
1111
create index idx2 on t1(v2);
1212

1313
statement ok
14-
insert into t1 values(1, 2),(3,4),(5,6);
14+
insert into t1 values (1, 2), (3, 4), (5, 6);
1515

1616
statement ok
17-
explain select v1,v2 from t1 where v1 = 1;
17+
explain select v1, v2 from t1 where v1 = 1;
1818

1919
query II
20-
select v1,v2 from t1 where v1 = 1;
20+
select v1, v2 from t1 where v1 = 1;
2121
----
2222
1 2
2323

2424
query II
25-
select v1,v2 from t1 where v2 = 4;
25+
select v1, v2 from t1 where v2 = 4;
2626
----
2727
3 4
2828

2929
query II
30-
select v1,v2 from t1 where v1 = 1 or v2 = 4 order by v1, v2;
30+
select v1, v2 from t1 where v1 = 1 or v2 = 4 order by v1, v2;
3131
----
3232
1 2
3333
3 4
@@ -36,10 +36,57 @@ statement ok
3636
delete from t1 where v1 = 1;
3737

3838
query II
39-
select v1,v2 from t1 order by v1, v2;
39+
select v1, v2 from t1 order by v1, v2;
4040
----
4141
3 4
4242
5 6
4343

44+
statement ok
45+
insert into t1 values (NULL, 5);
46+
47+
statement ok
48+
create index idx3 on t1(v1 desc);
49+
50+
statement ok
51+
create index idx4 on t1(v1 nulls first);
52+
53+
statement ok
54+
create index idx5 on t1(v1 desc nulls last);
55+
56+
query II
57+
select v1, v2 from t1 order by v1;
58+
----
59+
3 4
60+
5 6
61+
NULL 5
62+
63+
query II
64+
select v1, v2 from t1 order by v1 desc;
65+
----
66+
NULL 5
67+
5 6
68+
3 4
69+
70+
query II
71+
select v1, v2 from t1 order by v1 asc nulls first;
72+
----
73+
NULL 5
74+
3 4
75+
5 6
76+
77+
query II
78+
select v1, v2 from t1 order by v1 desc nulls last;
79+
----
80+
5 6
81+
3 4
82+
NULL 5
83+
84+
query II
85+
select v1, v2 from t1 order by v1 desc nulls first;
86+
----
87+
NULL 5
88+
5 6
89+
3 4
90+
4491
statement ok
4592
drop table t1;

0 commit comments

Comments
 (0)