我正在尝试创建一个与所有主要关系数据库(MySQL,PostgreSQL,Derby,SQLite,...)兼容的select语句。
这里是简单的select语句:SELECT * FROM taggings WHERE public IS TRUE
问题是例如SQLite不支持布尔数据类型,因此我将我的语句重写为:SELECT * FROM taggings WHERE public = 1
据我所知,它对SQLite(对公共字段使用某种字节)以及MySQL(将1解释为真,因为它使用公共字段的布尔类型)有效。
PostgreSQL何时使用布尔公共字段?从手册看起来我必须写SELECT * FROM taggings WHERE public = '1'
。或者在这种情况下与上述陈述相同? (我没有机会在这里设置PostgreSQL数据库。)
感谢您的帮助!
答案 0 :(得分:1)
SELECT * FROM taggings WHERE public