openGauss-server/src/test/regress/sql/hw_order.sql

45 lines
2.2 KiB
SQL

show client_encoding;
SET client_encoding TO UTF8;
CREATE TABLE order_cn_table(cn VARCHAR(80), sort INTEGER);
INSERT INTO order_cn_table VALUES('',28);
INSERT INTO order_cn_table VALUES('',27);
INSERT INTO order_cn_table VALUES('',26);
INSERT INTO order_cn_table VALUES('',25);
INSERT INTO order_cn_table VALUES('',24);
INSERT INTO order_cn_table VALUES('',23);
INSERT INTO order_cn_table VALUES('',22);
INSERT INTO order_cn_table VALUES('',21);
INSERT INTO order_cn_table VALUES('',20);
INSERT INTO order_cn_table VALUES('',19);
INSERT INTO order_cn_table VALUES('',18);
INSERT INTO order_cn_table VALUES('',17);
INSERT INTO order_cn_table VALUES('',16);
INSERT INTO order_cn_table VALUES('',15);
INSERT INTO order_cn_table VALUES('',14);
INSERT INTO order_cn_table VALUES('绿',13);
INSERT INTO order_cn_table VALUES('',12);
INSERT INTO order_cn_table VALUES('',11);
INSERT INTO order_cn_table VALUES('',10);
INSERT INTO order_cn_table VALUES('',9);
INSERT INTO order_cn_table VALUES('',8);
INSERT INTO order_cn_table VALUES('',7);
INSERT INTO order_cn_table VALUES('',6);
INSERT INTO order_cn_table VALUES('',5);
INSERT INTO order_cn_table VALUES('',4);
INSERT INTO order_cn_table VALUES('',3);
INSERT INTO order_cn_table VALUES('',2);
INSERT INTO order_cn_table VALUES('',1);
SELECT * FROM order_cn_table ORDER BY NLSSORT(cn, 'NLS_SORT = SCHINESE_PINYIN_M');
SELECT * FROM order_cn_table ORDER BY NLSSORT(cn, 'NLS_SORT = generic_m_ci');
SELECT * FROM order_cn_table ORDER BY NLSSORT(cn, 'NLS_SORT = SCHINESE');
SELECT * FROM order_cn_table ORDER BY NLSSORT(cn, 'nls_sort = schinese_pinyin_m') desc nulls first;
SELECT * FROM order_cn_table t ORDER BY NLSSORT(t.cn, 'nls_sort = schinese_pinyin_m') asc nulls last;
SELECT * FROM order_cn_table ORDER BY NLSSORT(decode(cn,'0','0',cn), 'nls_sort = schinese_pinyin_m') asc nulls last;
DROP TABLE order_cn_table;
create table order_cn_table(cn varchar(10));
insert into order_cn_table values('Aa');
insert into order_cn_table values('AB');
SELECT * FROM order_cn_table ORDER BY NLSSORT(cn, 'nls_sort = SCHINESE_PINYIN_M');
explain (verbose, costs off) SELECT * FROM order_cn_table ORDER BY NLSSORT(cn, 'nls_sort = SCHINESE_PINYIN_M');
DROP TABLE order_cn_table;