需要获取单个列
本文关键字:单个列 获取 | 更新日期: 2023-09-27 18:00:05
我有一个表
col1 col2 col3
----------------
6 ab
2 cd 3
3 eg 6
7 hs 3
5 gh 4
6 kj 7
当我用kj(col2
)搜索时,col3-7等于col1-7,所以"hs"需要添加到树(hs-kj),现在col3-3用col1-3"eg"添加到树,然后col3-6用col1-6,所以"ab"添加到棵树,所以输出应该是(ab-eg-hs-kj
请有人回答这个问题吗?
假设col1
是唯一的,则此查询将执行此操作;
WITH cte AS (
SELECT m.col2, m.col3, 1 col4 FROM mytable m WHERE col2='kj'
UNION ALL
SELECT m.col2, m.col3, col4+1 col4 FROM mytable m JOIN cte ON m.col1 = cte.col3
)
SELECT col2 FROM cte ORDER BY col4
一个SQLfiddle示例,其中col1是唯一的。
目前,ab
和kj
对于col1
具有相同的值,这使得ab
相对于kj
的选择不清楚。如果这不是一个错误,就需要澄清选择标准。