使用 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 标准运算符 <> 而不是 !=