使用 ANY(或 ALL)是否比手动检查 ANY 中的每个条目更快? - postgres
Is using ANY (or ALL) faster than checking manually against each entry in the ANY? - postgres
说我要查
"A does not equal any of the following: A, B, C"
我可以把我的条件写成
A != ALL('{A, B, C}
)`
我也可以写成
A != A and A != B and A != C
我知道我在这里并没有真正正确地使用类型(主要是为了简洁),但这个想法应该很清楚。其中一个比另一个快吗?我还不确定如何在数据库上测试这些东西:(
两个版本应该产生相同的执行计划,但是如果你想去掉那句话中的虚拟语气,你应该使用 EXPLAIN
.
检查自己
顺便说一下,我建议您使用 SQL 标准运算符 <>
而不是 !=
。
说我要查
"A does not equal any of the following: A, B, C"
我可以把我的条件写成
A != ALL('{A, B, C}
)`
我也可以写成
A != A and A != B and A != C
我知道我在这里并没有真正正确地使用类型(主要是为了简洁),但这个想法应该很清楚。其中一个比另一个快吗?我还不确定如何在数据库上测试这些东西:(
两个版本应该产生相同的执行计划,但是如果你想去掉那句话中的虚拟语气,你应该使用 EXPLAIN
.
顺便说一下,我建议您使用 SQL 标准运算符 <>
而不是 !=
。