Clickhouse 是否可以将包含一对数组的结果转换为列?
\n\n形成这个结果:
\n\n\xe2\x94\x8c\xe2\x94\x80f1\xe2\x94\x80\xe2\x94\x80\xe2\x94\xacf2\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xacf3\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x90\n\xe2\x94\x82 \'a\' \xe2\x94\x82 [1,2,3] \xe2\x94\x82 [\'x\',\'y\',\'z\'] \xe2\x94\x82\n\xe2\x94\x82 \'b\' \xe2\x94\x82 [4,5,6] \xe2\x94\x82 [\'x\',\'y\',\'z\'] \xe2\x94\x82\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x98\nRun Code Online (Sandbox Code Playgroud)\n\n到 :
\n\n\xe2\x94\x8c\xe2\x94\x80f1\xe2\x94\x80\xe2\x94\x80\xe2\x94\xacx\xe2\x94\x80\xe2\x94\x80\xe2\x94\xacy\xe2\x94\x80\xe2\x94\x80\xe2\x94\xacz\xe2\x94\x80\xe2\x94\x80\xe2\x94\x90\n\xe2\x94\x82 \'a\' \xe2\x94\x82 1 \xe2\x94\x82 2 \xe2\x94\x82 3 \xe2\x94\x82\n\xe2\x94\x82 \'b\' \xe2\x94\x82 4 \xe2\x94\x82 5 \xe2\x94\x82 6 \xe2\x94\x82\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x98\nRun Code Online (Sandbox Code Playgroud)\n\n这个想法是不必为每行重复标题值。
\n\n就我而言,“标头”数组 f3 通过查询唯一并连接到 f1、f2。
\n您可以借助indexOf函数来完成此操作。
SELECT *\nFROM test_sof \n\n\xe2\x94\x8c\xe2\x94\x80f1\xe2\x94\x80\xe2\x94\xac\xe2\x94\x80f2\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xac\xe2\x94\x80f3\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x90\n\xe2\x94\x82 a \xe2\x94\x82 [1,2,3] \xe2\x94\x82 [\'x\',\'y\',\'z\'] \xe2\x94\x82\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x98\n\xe2\x94\x8c\xe2\x94\x80f1\xe2\x94\x80\xe2\x94\xac\xe2\x94\x80f2\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xac\xe2\x94\x80f3\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x90\n\xe2\x94\x82 c \xe2\x94\x82 [7,8,9,0] \xe2\x94\x82 [\'x\',\'y\',\'z\',\'n\'] \xe2\x94\x82\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x98\n\xe2\x94\x8c\xe2\x94\x80f1\xe2\x94\x80\xe2\x94\xac\xe2\x94\x80f2\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xac\xe2\x94\x80f3\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x90\n\xe2\x94\x82 d \xe2\x94\x82 [7,8,9,11] \xe2\x94\x82 [\'x\',\'y\',\'z\',\'n\'] \xe2\x94\x82\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x98\n\xe2\x94\x8c\xe2\x94\x80f1\xe2\x94\x80\xe2\x94\xac\xe2\x94\x80f2\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xac\xe2\x94\x80f3\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x90\n\xe2\x94\x82 b \xe2\x94\x82 [4,5,6] \xe2\x94\x82 [\'x\',\'y\',\'z\'] \xe2\x94\x82\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x98\n\n4 rows in set. Elapsed: 0.001 sec.\nRun Code Online (Sandbox Code Playgroud)\n\n然后:
\n\nSELECT \n f1, \n f2[indexOf(f3, \'x\')] AS x, \n f2[indexOf(f3, \'y\')] AS y, \n f2[indexOf(f3, \'z\')] AS z, \n f2[indexOf(f3, \'n\')] AS n\nFROM test_sof \nORDER BY \n f1 ASC, \n x ASC\n\n\xe2\x94\x8c\xe2\x94\x80f1\xe2\x94\x80\xe2\x94\xac\xe2\x94\x80x\xe2\x94\x80\xe2\x94\xac\xe2\x94\x80y\xe2\x94\x80\xe2\x94\xac\xe2\x94\x80z\xe2\x94\x80\xe2\x94\xac\xe2\x94\x80\xe2\x94\x80n\xe2\x94\x80\xe2\x94\x90\n\xe2\x94\x82 a \xe2\x94\x82 1 \xe2\x94\x82 2 \xe2\x94\x82 3 \xe2\x94\x82 0 \xe2\x94\x82\n\xe2\x94\x82 b \xe2\x94\x82 4 \xe2\x94\x82 5 \xe2\x94\x82 6 \xe2\x94\x82 0 \xe2\x94\x82\n\xe2\x94\x82 c \xe2\x94\x82 7 \xe2\x94\x82 8 \xe2\x94\x82 9 \xe2\x94\x82 0 \xe2\x94\x82\n\xe2\x94\x82 d \xe2\x94\x82 7 \xe2\x94\x82 8 \xe2\x94\x82 9 \xe2\x94\x82 11 \xe2\x94\x82\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x98\n\n4 rows in set. Elapsed: 0.002 sec. \nRun Code Online (Sandbox Code Playgroud)\n\n请记住头数组中的索引不会出现在数据数组中的情况,反之亦然。
\n\nUPD:如何在不知道“标题”的情况下获取数据的方式。
\n\n您将得到三列,第三列带有标题。
\n\nSELECT \n f1, \n f2[num] AS f2_el, \n f3[num] AS f3_el\nFROM test_sof \nARRAY JOIN arrayEnumerate(f2) AS num\nORDER BY f1 ASC\n\n\xe2\x94\x8c\xe2\x94\x80f1\xe2\x94\x80\xe2\x94\xac\xe2\x94\x80f2_el\xe2\x94\x80\xe2\x94\xac\xe2\x94\x80f3_el\xe2\x94\x80\xe2\x94\x90\n\xe2\x94\x82 a \xe2\x94\x82 1 \xe2\x94\x82 x \xe2\x94\x82\n\xe2\x94\x82 a \xe2\x94\x82 2 \xe2\x94\x82 y \xe2\x94\x82\n\xe2\x94\x82 a \xe2\x94\x82 3 \xe2\x94\x82 z \xe2\x94\x82\n\xe2\x94\x82 b \xe2\x94\x82 4 \xe2\x94\x82 x \xe2\x94\x82\n\xe2\x94\x82 b \xe2\x94\x82 5 \xe2\x94\x82 y \xe2\x94\x82\n\xe2\x94\x82 b \xe2\x94\x82 6 \xe2\x94\x82 z \xe2\x94\x82\n\xe2\x94\x82 c \xe2\x94\x82 7 \xe2\x94\x82 x \xe2\x94\x82\n\xe2\x94\x82 c \xe2\x94\x82 8 \xe2\x94\x82 y \xe2\x94\x82\n\xe2\x94\x82 c \xe2\x94\x82 9 \xe2\x94\x82 z \xe2\x94\x82\n\xe2\x94\x82 c \xe2\x94\x82 0 \xe2\x94\x82 n \xe2\x94\x82\n\xe2\x94\x82 d \xe2\x94\x82 7 \xe2\x94\x82 x \xe2\x94\x82\n\xe2\x94\x82 d \xe2\x94\x82 8 \xe2\x94\x82 y \xe2\x94\x82\n\xe2\x94\x82 d \xe2\x94\x82 9 \xe2\x94\x82 z \xe2\x94\x82\n\xe2\x94\x82 d \xe2\x94\x82 11 \xe2\x94\x82 n \xe2\x94\x82\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xb4\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x98\n\n14 rows in set. Elapsed: 0.006 sec.\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
13701 次 |
| 最近记录: |