加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql-server – 有可能在Sql Server和PostgreSQL上做“where bool

发布时间:2020-12-12 16:42:28 所属栏目:MsSql教程 来源:网络整理
导读:我正在尝试使一个能够在Sql Server和PostgreSQL上运行的应用程序. 我似乎找不到一个基本上一个共同的表达方式 select * from table where booleancol=false 在SQL Server上我必须做(这是非常混乱,因为位类型的默认值必须为true或false,但不能将它们分配为true
我正在尝试使一个能够在Sql Server和PostgreSQL上运行的应用程序.

我似乎找不到一个基本上一个共同的表达方式

select * from table where booleancol=false

在SQL Server上我必须做(这是非常混乱,因为位类型的默认值必须为true或false,但不能将它们分配为true或false或针对它进行测试)

select * from table where booleancol=0

在PostgreSQL上我一定要做

select * from table where booleancol is false

在我们的程序中有相当多的查询,这样做,所以我更喜欢如果只有一些通用的语法,我可以使用而不是如果(dbformat ==“postgres”)..类型crap ..

此外,我宁愿将列作为布尔/位类型,而不是将其更改为整数类型..虽然这是一个选项..

解决方法

SQL Server将自动将位值更改为true或false的varchar值.所以以下作品在那里:
select * from table where booleancol = 'false'

我不知道postgre做同样的事情.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读