我正在使用PostgreSQL 9.2,我希望为布尔值false插入0,为布尔值true插入1,而不使用任何类型转换,这是PostgreSQL数据库无法接受的。 通常PostgreSQL允许将布尔值与整数(即0或1)进行比较,但不能使用0或1插入布尔值来表示true和false。
那么是否有任何技术可以插入0表示布尔值为false,1表示布尔值为真,我可以使用0和1比较布尔值?
这是我使用的演员表达式
update pg_cast set castcontext = 'i' where oid in (
select c.oid
from pg_cast c
inner join pg_type src on src.oid = c.castsource
inner join pg_type tgt on tgt.oid = c.casttarget
where src.typname like 'int%' and tgt.typname like 'bool%'
)