|
|
1
6
这将返回所有父记录,其中[至少]有一个具有“冒泡”foo的子记录,[至少]有一个具有“buzz”foo的子记录。我认为这是问题的必要条件。 此外,虽然这个查询可能是次优的,但从某种意义上说,它将与大多数SQL实现一起工作,而不仅仅是那些更现代的实现,在这些实现中支持CTE、子查询和相关构造。
编辑
:
下面是Joel在这里的查询,稍作修改,以显示如何将其扩展为2个以上的foo值。
|
|
|
2
5
我相信你想要这样的东西。
下面是测试脚本:
仅返回ID 1。 |
|
|
3
0
这将得到您想要的结果:
|
|
|
4
0
我想和大家分享一下乔尔优秀答案的简单概括。这里的想法是能够将“target”子级的任意表作为表值参数或拆分分隔字符串传递到过程中。虽然这很好,但如果有一个类似的查询匹配使用like而不是in,也会很好。
|