【发布时间】:2015-10-01 11:28:21
【问题描述】:
这是我想要实现的,用伪代码实现
part1 = select from foo ...
part2 = init empty
foreach row in part1
part2 += select from foo where row.something as condition in here
union part1, part2
是否可以在一个查询中完成?
这是结构
parent_name | name
------------+-------
null | item1 # root
item1 | item2 # first level
item1 | item3 # first level
item2 | item4 # second level
item4 | item5 # third level
null | item6 # another root
结果 - 条件是我只想要根名称 = item1 的树
parent_name | name
------------+-------
null | item1
item1 | item2
item1 | item3
item2 | item4
基本上它是一个树结构,我想获取树中的所有行(两层深),从根开始。结果中缺少第 5 项,因为它在第三级中,第 6 项因为它是不同的树。
【问题讨论】:
-
是的,它被称为相关子查询
-
编辑您的问题并提供示例数据和所需结果。
-
也许你只是在一个连接之后,而不是一个相关的子查询?如果没有 Gordon 要求的信息,很难猜出您的意思。
-
@Boneist 我添加了示例