English 中文(简体)
处理Oracle skou的循环数据
原标题:Handling circular data in Oracle s SQL
  • 时间:2009-10-21 08:59:34
  •  标签:

有一种问题不了解如何只解决KQ(我可以与PL/SQL做事,但只能与KQ)。

我有一个表格(事实上,它不是表格,而是电离层的结果),其中含有类似价值观:

  column1    column2 
 ---------  ---------
   value1    value2
   value1    value3
   value2    value4
   value3    value7
   value8    value9

我想得到的数据(我不关心顺序):

  output_column
 ---------------
  value1, value2, value3, value4, value7
  value8, value9

换言之,我要获得两个价值观中的任何一种数据相联。

投入表中的每一个配对都是独一无二的(小值总是在左边,我用一个独特的办法来计算投入表)。

我绝对不了解如何用模型来做到这一点,我通过抱怨“电离层数据”来努力连接。 这首先看不去做,但可以说明如何以非程序性方式做到这一点。 任何想法?

提前感谢。

最佳回答

下面的询问将与你的数据组合作:

SQL> SELECT root ||  ,  || stragg(DISTINCT column2)
  2    FROM (SELECT CONNECT_BY_ROOT(column1) root, t.*
  3             FROM t
  4           CONNECT BY PRIOR column2 = column1
  5            START WITH column1 IN (SELECT column1
  6                                     FROM t
  7                                    WHERE column1 NOT IN (SELECT column2
  8                                                            FROM t))) v
  9   GROUP BY root;

ROOT|| , ||STRAGG(DISTINCTCOLU
-----------------------------------------
value1,value2,value3,value4,value7
value8,value9

使用 function.

问题回答




相关问题
热门标签