【发布时间】:2018-02-14 19:06:18
【问题描述】:
我是 PostgreSQL 新手。在数据库中创建表时我有疑问。谁能澄清bit 和boolean 数据类型之间的区别?
【问题讨论】:
-
很多关于这个主题的帖子。你可以谷歌你的标题,你会找到一些答案。其他 RDBMS 的答案应该和 postgreSQL 一样好
我是 PostgreSQL 新手。在数据库中创建表时我有疑问。谁能澄清bit 和boolean 数据类型之间的区别?
【问题讨论】:
bit 仅存储数字 0 和 1(或 null)。
boolean 仅存储 true 和 false(或 null)。数字 (0, 1) 不是布尔值。布尔值可以在任何需要布尔 表达式 的地方使用。所以你可以例如这样做:
where is_active
需要将位列与某物进行比较:
where a_bit_column = 0
(a_bit_column = 0 的结果是布尔值)
与某些 DBMS 的想法相反,表达式 where 0 或 where 1 是不是有效的布尔表达式。
【讨论】: