select_distinct.err 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386
  1. Registering pre-existing tables
  2. tenk1
  3. tmp
  4. emp
  5. student
  6. stud_emp
  7. <sql-statement>
  8. --
  9. -- SELECT_DISTINCT
  10. --
  11. --
  12. -- awk '{print $3;}' onek.data | sort -n | uniq
  13. --
  14. SELECT DISTINCT two FROM tmp ORDER BY 1;
  15. </sql-statement>
  16. <sql-statement>
  17. --
  18. -- awk '{print $5;}' onek.data | sort -n | uniq
  19. --
  20. SELECT DISTINCT ten FROM tmp ORDER BY 1;
  21. </sql-statement>
  22. <sql-statement>
  23. --
  24. -- awk '{print $16;}' onek.data | sort -d | uniq
  25. --
  26. SELECT DISTINCT string4 FROM tmp ORDER BY 1;
  27. </sql-statement>
  28. <sql-statement>
  29. --
  30. -- awk '{print $3,$16,$5;}' onek.data | sort -d | uniq |
  31. -- sort +0n -1 +1d -2 +2n -3
  32. --
  33. SELECT DISTINCT two, string4, ten
  34. FROM tmp
  35. ORDER BY two using <, string4 using <, ten using <;
  36. </sql-statement>
  37. -stdin-:<main>: Error: Parse Sql
  38. -stdin-:<main>:7:23: Error: sortby_dir unsupported value: 3
  39. ORDER BY two using <, string4 using <, ten using <;
  40. ^
  41. <sql-statement>
  42. --
  43. -- awk '{print $2;}' person.data |
  44. -- awk '{if(NF!=1){print $2;}else{print;}}' - emp.data |
  45. -- awk '{if(NF!=1){print $2;}else{print;}}' - student.data |
  46. -- awk 'BEGIN{FS=" ";}{if(NF!=1){print $5;}else{print;}}' - stud_emp.data |
  47. -- sort -n -r | uniq
  48. --
  49. SELECT DISTINCT p.age FROM person* p ORDER BY age using >;
  50. </sql-statement>
  51. -stdin-:<main>: Error: Parse Sql
  52. -stdin-:<main>:8:57: Error: sortby_dir unsupported value: 3
  53. SELECT DISTINCT p.age FROM person* p ORDER BY age using >;
  54. ^
  55. <sql-statement>
  56. --
  57. -- Check mentioning same column more than once
  58. --
  59. EXPLAIN (VERBOSE, COSTS OFF)
  60. SELECT count(*) FROM
  61. (SELECT DISTINCT two, four, two FROM tenk1) ss;
  62. </sql-statement>
  63. -stdin-:<main>: Error: Parse Sql
  64. -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
  65. --
  66. ^
  67. <sql-statement>
  68. SELECT count(*) FROM
  69. (SELECT DISTINCT two, four, two FROM tenk1) ss;
  70. </sql-statement>
  71. -stdin-:<main>: Error: Type annotation
  72. -stdin-:<main>:1:1: Error: At function: RemovePrefixMembers, At function: PgSelect, At function: PgSetItem, At function: PgSelect, At function: PgSetItem
  73. SELECT count(*) FROM
  74. ^
  75. -stdin-:<main>:1:1: Error: Duplicated member: two
  76. SELECT count(*) FROM
  77. ^
  78. <sql-statement>
  79. --
  80. -- Compare results between plans using sorting and plans using hash
  81. -- aggregation. Force spilling in both cases by setting work_mem low.
  82. --
  83. SET work_mem='64kB';
  84. </sql-statement>
  85. -stdin-:<main>: Error: Parse Sql
  86. -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: work_mem
  87. --
  88. ^
  89. <sql-statement>
  90. -- Produce results with sorting.
  91. SET enable_hashagg=FALSE;
  92. </sql-statement>
  93. -stdin-:<main>: Error: Parse Sql
  94. -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: enable_hashagg
  95. -- Produce results with sorting.
  96. ^
  97. <sql-statement>
  98. SET jit_above_cost=0;
  99. </sql-statement>
  100. -stdin-:<main>: Error: Parse Sql
  101. -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: jit_above_cost
  102. SET jit_above_cost=0;
  103. ^
  104. <sql-statement>
  105. EXPLAIN (costs off)
  106. SELECT DISTINCT g%1000 FROM generate_series(0,9999) g;
  107. </sql-statement>
  108. -stdin-:<main>: Error: Parse Sql
  109. -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
  110. EXPLAIN (costs off)
  111. ^
  112. <sql-statement>
  113. CREATE TABLE distinct_group_1 AS
  114. SELECT DISTINCT g%1000 FROM generate_series(0,9999) g;
  115. </sql-statement>
  116. -stdin-:<main>: Error: Parse Sql
  117. -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 277
  118. CREATE TABLE distinct_group_1 AS
  119. ^
  120. <sql-statement>
  121. SET jit_above_cost TO DEFAULT;
  122. </sql-statement>
  123. -stdin-:<main>: Error: Parse Sql
  124. -stdin-:<main>:1:1: Error: VariableSetStmt, not supported kind: 1
  125. SET jit_above_cost TO DEFAULT;
  126. ^
  127. <sql-statement>
  128. CREATE TABLE distinct_group_2 AS
  129. SELECT DISTINCT (g%1000)::text FROM generate_series(0,9999) g;
  130. </sql-statement>
  131. -stdin-:<main>: Error: Parse Sql
  132. -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 277
  133. CREATE TABLE distinct_group_2 AS
  134. ^
  135. <sql-statement>
  136. SET enable_hashagg=TRUE;
  137. </sql-statement>
  138. -stdin-:<main>: Error: Parse Sql
  139. -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: enable_hashagg
  140. SET enable_hashagg=TRUE;
  141. ^
  142. <sql-statement>
  143. -- Produce results with hash aggregation.
  144. SET enable_sort=FALSE;
  145. </sql-statement>
  146. -stdin-:<main>: Error: Parse Sql
  147. -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: enable_sort
  148. -- Produce results with hash aggregation.
  149. ^
  150. <sql-statement>
  151. SET jit_above_cost=0;
  152. </sql-statement>
  153. -stdin-:<main>: Error: Parse Sql
  154. -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: jit_above_cost
  155. SET jit_above_cost=0;
  156. ^
  157. <sql-statement>
  158. EXPLAIN (costs off)
  159. SELECT DISTINCT g%1000 FROM generate_series(0,9999) g;
  160. </sql-statement>
  161. -stdin-:<main>: Error: Parse Sql
  162. -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 276
  163. EXPLAIN (costs off)
  164. ^
  165. <sql-statement>
  166. CREATE TABLE distinct_hash_1 AS
  167. SELECT DISTINCT g%1000 FROM generate_series(0,9999) g;
  168. </sql-statement>
  169. -stdin-:<main>: Error: Parse Sql
  170. -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 277
  171. CREATE TABLE distinct_hash_1 AS
  172. ^
  173. <sql-statement>
  174. SET jit_above_cost TO DEFAULT;
  175. </sql-statement>
  176. -stdin-:<main>: Error: Parse Sql
  177. -stdin-:<main>:1:1: Error: VariableSetStmt, not supported kind: 1
  178. SET jit_above_cost TO DEFAULT;
  179. ^
  180. <sql-statement>
  181. CREATE TABLE distinct_hash_2 AS
  182. SELECT DISTINCT (g%1000)::text FROM generate_series(0,9999) g;
  183. </sql-statement>
  184. -stdin-:<main>: Error: Parse Sql
  185. -stdin-:<main>:1:1: Error: RawStmt: alternative is not implemented yet : 277
  186. CREATE TABLE distinct_hash_2 AS
  187. ^
  188. <sql-statement>
  189. SET enable_sort=TRUE;
  190. </sql-statement>
  191. -stdin-:<main>: Error: Parse Sql
  192. -stdin-:<main>:1:1: Error: VariableSetStmt, not supported name: enable_sort
  193. SET enable_sort=TRUE;
  194. ^
  195. <sql-statement>
  196. SET work_mem TO DEFAULT;
  197. </sql-statement>
  198. -stdin-:<main>: Error: Parse Sql
  199. -stdin-:<main>:1:1: Error: VariableSetStmt, not supported kind: 1
  200. SET work_mem TO DEFAULT;
  201. ^
  202. <sql-statement>
  203. -- Compare results
  204. (SELECT * FROM distinct_hash_1 EXCEPT SELECT * FROM distinct_group_1)
  205. UNION ALL
  206. (SELECT * FROM distinct_group_1 EXCEPT SELECT * FROM distinct_hash_1);
  207. </sql-statement>
  208. -stdin-:<main>: Fatal: Table metadata loading
  209. -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.distinct_group_1
  210. <sql-statement>
  211. (SELECT * FROM distinct_hash_1 EXCEPT SELECT * FROM distinct_group_1)
  212. UNION ALL
  213. (SELECT * FROM distinct_group_1 EXCEPT SELECT * FROM distinct_hash_1);
  214. </sql-statement>
  215. -stdin-:<main>: Fatal: Table metadata loading
  216. -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.distinct_group_1
  217. <sql-statement>
  218. DROP TABLE distinct_hash_1;
  219. </sql-statement>
  220. <sql-statement>
  221. DROP TABLE distinct_hash_2;
  222. </sql-statement>
  223. <sql-statement>
  224. DROP TABLE distinct_group_1;
  225. </sql-statement>
  226. <sql-statement>
  227. DROP TABLE distinct_group_2;
  228. </sql-statement>
  229. <sql-statement>
  230. --
  231. -- Also, some tests of IS DISTINCT FROM, which doesn't quite deserve its
  232. -- very own regression file.
  233. --
  234. CREATE TEMP TABLE disttable (f1 integer);
  235. </sql-statement>
  236. <sql-statement>
  237. INSERT INTO DISTTABLE VALUES(1);
  238. </sql-statement>
  239. -stdin-:<main>: Fatal: Table metadata loading
  240. -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.DISTTABLE
  241. <sql-statement>
  242. INSERT INTO DISTTABLE VALUES(2);
  243. </sql-statement>
  244. -stdin-:<main>: Fatal: Table metadata loading
  245. -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.DISTTABLE
  246. <sql-statement>
  247. INSERT INTO DISTTABLE VALUES(3);
  248. </sql-statement>
  249. -stdin-:<main>: Fatal: Table metadata loading
  250. -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.DISTTABLE
  251. <sql-statement>
  252. INSERT INTO DISTTABLE VALUES(NULL);
  253. </sql-statement>
  254. -stdin-:<main>: Fatal: Table metadata loading
  255. -stdin-:<main>: Fatal: ydb/library/yql/providers/yt/gateway/file/yql_yt_file_services.cpp:44: Table not found: plato.DISTTABLE
  256. <sql-statement>
  257. -- basic cases
  258. SELECT f1, f1 IS DISTINCT FROM 2 as "not 2" FROM disttable;
  259. </sql-statement>
  260. -stdin-:<main>: Error: Parse Sql
  261. -stdin-:<main>:2:15: Error: A_Expr_Kind unsupported value: 3
  262. SELECT f1, f1 IS DISTINCT FROM 2 as "not 2" FROM disttable;
  263. ^
  264. <sql-statement>
  265. SELECT f1, f1 IS DISTINCT FROM NULL as "not null" FROM disttable;
  266. </sql-statement>
  267. -stdin-:<main>: Error: Parse Sql
  268. -stdin-:<main>:1:15: Error: A_Expr_Kind unsupported value: 3
  269. SELECT f1, f1 IS DISTINCT FROM NULL as "not null" FROM disttable;
  270. ^
  271. <sql-statement>
  272. SELECT f1, f1 IS DISTINCT FROM f1 as "false" FROM disttable;
  273. </sql-statement>
  274. -stdin-:<main>: Error: Parse Sql
  275. -stdin-:<main>:1:15: Error: A_Expr_Kind unsupported value: 3
  276. SELECT f1, f1 IS DISTINCT FROM f1 as "false" FROM disttable;
  277. ^
  278. <sql-statement>
  279. SELECT f1, f1 IS DISTINCT FROM f1+1 as "not null" FROM disttable;
  280. </sql-statement>
  281. -stdin-:<main>: Error: Parse Sql
  282. -stdin-:<main>:1:15: Error: A_Expr_Kind unsupported value: 3
  283. SELECT f1, f1 IS DISTINCT FROM f1+1 as "not null" FROM disttable;
  284. ^
  285. <sql-statement>
  286. -- check that optimizer constant-folds it properly
  287. SELECT 1 IS DISTINCT FROM 2 as "yes";
  288. </sql-statement>
  289. -stdin-:<main>: Error: Parse Sql
  290. -stdin-:<main>:2:10: Error: A_Expr_Kind unsupported value: 3
  291. SELECT 1 IS DISTINCT FROM 2 as "yes";
  292. ^
  293. <sql-statement>
  294. SELECT 2 IS DISTINCT FROM 2 as "no";
  295. </sql-statement>
  296. -stdin-:<main>: Error: Parse Sql
  297. -stdin-:<main>:1:10: Error: A_Expr_Kind unsupported value: 3
  298. SELECT 2 IS DISTINCT FROM 2 as "no";
  299. ^
  300. <sql-statement>
  301. SELECT 2 IS DISTINCT FROM null as "yes";
  302. </sql-statement>
  303. -stdin-:<main>: Error: Parse Sql
  304. -stdin-:<main>:1:10: Error: A_Expr_Kind unsupported value: 3
  305. SELECT 2 IS DISTINCT FROM null as "yes";
  306. ^
  307. <sql-statement>
  308. SELECT null IS DISTINCT FROM null as "no";
  309. </sql-statement>
  310. -stdin-:<main>: Error: Parse Sql
  311. -stdin-:<main>:1:13: Error: A_Expr_Kind unsupported value: 3
  312. SELECT null IS DISTINCT FROM null as "no";
  313. ^
  314. <sql-statement>
  315. -- negated form
  316. SELECT 1 IS NOT DISTINCT FROM 2 as "no";
  317. </sql-statement>
  318. -stdin-:<main>: Error: Parse Sql
  319. -stdin-:<main>:2:10: Error: A_Expr_Kind unsupported value: 4
  320. SELECT 1 IS NOT DISTINCT FROM 2 as "no";
  321. ^
  322. <sql-statement>
  323. SELECT 2 IS NOT DISTINCT FROM 2 as "yes";
  324. </sql-statement>
  325. -stdin-:<main>: Error: Parse Sql
  326. -stdin-:<main>:1:10: Error: A_Expr_Kind unsupported value: 4
  327. SELECT 2 IS NOT DISTINCT FROM 2 as "yes";
  328. ^
  329. <sql-statement>
  330. SELECT 2 IS NOT DISTINCT FROM null as "no";
  331. </sql-statement>
  332. -stdin-:<main>: Error: Parse Sql
  333. -stdin-:<main>:1:10: Error: A_Expr_Kind unsupported value: 4
  334. SELECT 2 IS NOT DISTINCT FROM null as "no";
  335. ^
  336. <sql-statement>
  337. SELECT null IS NOT DISTINCT FROM null as "yes";
  338. </sql-statement>
  339. -stdin-:<main>: Error: Parse Sql
  340. -stdin-:<main>:1:13: Error: A_Expr_Kind unsupported value: 4
  341. SELECT null IS NOT DISTINCT FROM null as "yes";
  342. ^