我有一张桌子:
col1 | col2 | col3
-----+------+-------
1 | a | 5
5 | d | 3
3 | k | 7
6 | o | 2
2 | 0 | 8
Run Code Online (Sandbox Code Playgroud)
如果用户搜索"1",程序将查看col1具有"1"的程序,然后它将获得col3"5"中的值,然后程序将继续搜索"5",col1并且将获得"3" in col3等等.所以它会打印出来:
1 | a | 5
5 | d | 3
3 | k | 7
Run Code Online (Sandbox Code Playgroud)
如果用户搜索"6",它将打印出来:
6 | o | 2
2 | 0 | 8
Run Code Online (Sandbox Code Playgroud)
如何构建SELECT查询来做到这一点?
我有一张桌子
create table site
(
site_Id int(5),
parent_Id int(5),
site_desc varchar2(100)
);
Run Code Online (Sandbox Code Playgroud)
领域的意义:
要求是,如果我有一个site_id作为输入,我需要在网站下面标记所有ID.例如:
A
/ \
B C
/ | \ /\
D E F G H
/\
I J
Run Code Online (Sandbox Code Playgroud)
所有节点都是site_Id.
该表包含如下数据:
Site_id | Parent_ID | site_desc
_________|____________|___________
A | -1 |
B | A |
C | A |
D | B |
E | B |
F | B |
I | D |
J | D |
Run Code Online (Sandbox Code Playgroud)
......
A是B和C的父级,依此类推.
如果B是给定的输入,那么查询需要获取D,E,I,F,J
它目前通过循环中的多个查询来实现,但我想在最少数量的查询中实现这一点.
我目前正在做的是::
投票 …