在 Postgres 中,
EXISTS
运算符是否具有最高优先级?例如:
SELECT 1 + EXISTS (SELECT 1)::int;
这里似乎缺少:https://www.postgresql.org/docs/7.2/sql-precedence.html。虽然最高的是
::
,那么EXISTS
会更高吗?
换句话说,它是这样评估的:
select (exists (select 1))::int;
而不是像这样,如果你尝试,会出错:
select exists ((select 1)::int);
这意味着
EXISTS
运算符的优先级高于 CAST
运算符。这是正确的吗?