oracle中 =all 的疑惑
发布网友
发布时间:2022-04-13 23:59
我来回答
共1个回答
热心网友
时间:2022-04-14 01:28
首先, 你的测试很好, 我这里把概念再给你归纳一下:
1. ANY和SOME 是用来和子句返回的"每一个"值进行比较。 如果返回值为空(0行返回值),则为FALSE
2. ALL 是用来和子句返回的“所有”值进行比较。 如果返回值为空(0行返回值),则为TRUE
------------------------------------------------------------------------------------------------------
本来想顺带提一下你例子用的correlated subquery, 但是我想上面说的已经回答了您要的问题。 您的第二个删除用法是正确的。不过能不用尽量不用correlated subquery, 执行效率在实际工作中可能需要考虑, 不过有限的已知条件下,您用的挺好,没问题。