Postgresql 关于postgres中数据类型相等比较的问题:运算符不存在错误 SELECT'{}'::json='{}'::json
将因错误而失败 JSON是postgres无法在开箱即用的平等性上进行比较的唯一数据类型吗?如果不是,那么如何计算出哪些数据类型不能在等式上进行比较(与相同的数据类型相比)Postgresql 关于postgres中数据类型相等比较的问题:运算符不存在错误 SELECT'{}'::json='{}'::json,postgresql,Postgresql,将因错误而失败 JSON是postgres无法在开箱即用的平等性上进行比较的唯一数据类型吗?如果不是,那么如何计算出哪些数据类型不能在等式上进行比较(与相同的数据类型相比) 我只想获得相等比较失败的数据类型列表。要找出哪些类型支持=运算符,可以使用以下查询: select lt.typname as left_type, rt.typname as right_type from pg_operator opr join pg_type lt on lt.oid = opr.
我只想获得相等比较失败的数据类型列表。要找出哪些类型支持
=
运算符,可以使用以下查询:
select lt.typname as left_type,
rt.typname as right_type
from pg_operator opr
join pg_type lt on lt.oid = opr.oprleft
join pg_type rt on rt.oid = opr.oprright
where oprname = '=';
通过使用NOT EXISTS条件,您可以找出所有不支持=
select t.typname
from pg_type t
where not exists (select *
from pg_operator opr
where opr.oprname = '='
and opr.oprleft = t.oid
and opr.oprright = t.oid);
要了解哪些类型支持
=
运算符,可以使用以下查询:
select lt.typname as left_type,
rt.typname as right_type
from pg_operator opr
join pg_type lt on lt.oid = opr.oprleft
join pg_type rt on rt.oid = opr.oprright
where oprname = '=';
通过使用NOT EXISTS条件,您可以找出所有不支持=
select t.typname
from pg_type t
where not exists (select *
from pg_operator opr
where opr.oprname = '='
and opr.oprleft = t.oid
and opr.oprright = t.oid);
这回答了你的问题吗?不。我只对不可比较的类型感兴趣。这能回答你的问题吗?不。我只对不可比较的类型感兴趣。非常感谢!
pg_操作符
查询正是我不久前梦寐以求的:(cidr
在不存在的列表中,但等式在其中起作用。此外,一些失败(键入“基数”不存在
)多谢了!那pg_操作符
查询正是我不久前梦寐以求的:((.cidr
位于不存在的列表中,但等式在该列表中起作用。此外,一些失败(类型“基数”不存在
)