PostgreSQL 布尔值


PostgreSQL 布尔值

在本节中,我们将了解PostgreSQL 布尔数据类型的工作原理,它允许我们设计数据库表。我们还看到了布尔数据类型的**例子**。

什么是 PostgreSQL 布尔数据类型?

Boolean 是PostgreSQL 中常用的数据类型,它总是返回两个可能的值,例如TRUE 和 FALSE。布尔数据类型可以缩写为BOOL

PostgreSQL 布尔值

换句话说,我们可以说 PostgreSQL 布尔数据类型使用一个字节来存储数据库中的布尔值。并且它始终可以用于以YES 或 No值的形式获得批准。

PostgreSQL允许我们使用单一的布尔数据类型,称为BOOLEAN,包含三个不同的True、False 和 Null值。

注意:SQL 支持布尔数据类型的 TRUE、FALSE 和 NULL 值。但是PostgreSQL只能灵活地使用 TRUE 和 FALSE 值。

我们有下表,其中包含PostgreSQL支持的TRUE 和 FALSE的有效文字值:

True False
true false
't' 'f '
'true' 'false'
'y' 'n'
'yes' 'no'
'1' '0'

注意:正如我们在上表中看到的,除了 True 和 False 之外的所有常量值都必须用单引号括起来。上表中的前导或尾随空格无关紧要。

PostgreSQL 布尔数据类型示例

让我们看不同的例子来理解PostgreSQL 布尔数据类型是如何工作的。

为此,我们将在CREATE命令的帮助下创建一个新表,并使用INSERT命令插入一些值。

我们将使用CREATE命令在Javatpoint数据库中创建表Items_in_stock

CREATE TABLE Items_in_stock  (  
   Items_id INT PRIMARY KEY,  
   In_stock BOOLEAN NOT NULL  
);

输出

所述Items_in_storck表已经执行上述命令后成功创建,如图中下面的截图:

PostgreSQL 布尔值

一旦生成了Items_in_storck表,我们就可以在INSERT命令的帮助下为布尔值使用几个文字值。

INSERT INTO Items_in_stock (Items_id,In_stock )  
VALUES  
    (101, TRUE),  
    (201, FALSE),  
    (301, 't'),  
    (401, '1'),  
    (501, 'y'),  
    (601, 'yes'),  
    (701, 'no'),  
    (801, '0');

输出

执行上述命令后,我们会得到如下信息:该值已成功插入到Items_in_stock\表中。

PostgreSQL 布尔值

创建和插入后Items_in_stock表中的值,我们将使用下面的命令来查找这些项目,其是在股票

SELECT *  
FROM Items_in_stock       
WHERE In_stock  = 'yes';

输出

成功执行上述命令后,我们会得到以下结果:该项目是可用于特定Items_idItems_in_stock表。

PostgreSQL 布尔值

我们还可以在布尔列的帮助下检索True值,而无需使用任何运算符。

正如我们在下面的例子中看到,下面的语句用来检索所有的项目它们的股票

SELECT *   
FROM Items_in_stock       
WHERE In_stock;

输出

在执行上述命令时,我们将得到与上述命令类似的输出:

PostgreSQL 布尔值

同样,如果我们检查假值,我们可以将布尔列的值与任何有效的布尔常量进行比较

下面的命令是用来返回的项目这是不是在股票:

SELECT *   
FROM Items_in_stock       
WHERE In_stock= 'no';

输出

成功执行上述命令后,我们会得到以下结果:该项目不是可用于特定Items_idItems_in_stock表。

PostgreSQL 布尔值

或者我们可以使用NOT 运算符来确定布尔列中的是否为,如以下命令所示:

SELECT *   
FROM Items_in_stock       
WHERE NOT In_stock;

输出

在执行上述命令时,我们将得到与上述命令类似的输出:

PostgreSQL 布尔值

设置布尔列的默认值示例

我们在ALTER TABLE 命令中使用SET DEFAULT 子句为现有布尔列设置默认值。

在下面的例子中,我们使用下面的ALTER TABLE命令来设置默认值用于IN_STOCK在列Items_in_stock表:

ALTER TABLE Items_in_stock  
ALTER COLUMN In_stock  
SET DEFAULT FALSE;

输出

执行上述命令后,我们将收到以下消息,表明Items_in_stock\表已成功更改。

PostgreSQL 布尔值

如果我们插入一行而不描述In_stock列的值,PostgreSQL 将使用 FALSE 值:

INSERT INTO Items_in_stock (Items_id)  
VALUES (901);

输出

执行上述命令时,我们将收到以下消息:特定值已成功插入到Items_in_stock\表中。

PostgreSQL 布尔值

在以下命令中,我们将使用Select语句来检索Items_id 901 的

SELECT *  
FROM Items_in_stock  
WHERE Items_id = 901;

输出

执行上述命令后,我们将得到以下输出:

PostgreSQL 布尔值

同样,当我们在Create命令的帮助下创建表时,我们也可以为布尔列设置默认值。

我们将在列定义中使用DEFAULT约束,如以下命令所示:

CREATE TABLE test_boolean(  
   test BOOL DEFAULT 't'  
);

输出

执行上述命令后,我们将得到以下消息:test_布尔\表已成功创建。

PostgreSQL 布尔值

概述

PostgreSQL 布尔数据类型部分,我们学习了以下主题:

  • 布尔数据类型被用来存储布尔数据。
  • 我们使用 PostgreSQL 布尔数据类型来设置布尔列的默认值。