PostgreSQL Array类型

在本节中,我们将了解PostgreSQL 数组数据类型的工作原理、数组数据类型的示例,以及一些可访问的数组函数,如unnest()、ANY(),它们可以帮助我们更有效地处理数组值。我们还看到了在WHERE子句中使用数组元素的示例。

什么是 PostgreSQL Array数组数据类型?

PostgreSQL中,Array 数据类型发挥了重要作用。我们知道,每一种数据类型都有对应的数组类型,比如字符有character[]数组类型,整数有integer[]数组类型等。

PostgreSQL 允许我们将列指定为任意有效数据类型的数组,包括用户自定义数据类型、枚举数据类型和内置数据类型。

PostgreSQL Array数组数据类型的语法

PostgreSQL Array 数据类型的语法如下:

variable_name DATA TYPE[];  

PostgreSQL 数组数据类型示例

让我们看示例以了解PostgreSQL 数组数据类型的工作原理。

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

创建 PostgreSQL 数组表

person_details表包含各种列,例如id、person_name 和 Mobile_numbers,对于Mobile_number列,我们使用一维数组,其中包含一个人可能拥有的多个手机号码。

CREATE TABLE person_details (  
    id serial PRIMARY KEY,  
    person_name VARCHAR (200) ,  
    mobile_numbers TEXT []  
);  

执行上述命令后,我们将得到以下消息窗口,其中显示person_details表已成功创建到Organization数据库中。

插入 PostgreSQL 数组值

成功创建person_details表后,我们将在INSERT命令的帮助下向其中插入一些值。

INSERT INTO person_details (person_name, mobile_number)  
VALUES('Maria Smith',ARRAY [ '(444)-333-1234','(555)-333-5432' ]);  

执行上述命令后,我们将得到如下消息窗口,显示值已成功插入到person_details表中。

在上面的插入命令中,我们使用ARRAY 构造函数创建了一个数组并将其添加到Person_details表中。

我们还可以使用大括号{} 而不是使用方括号 [] ,正如我们在以下命令中看到的那样:

INSERT INTO person_details (person_name, mobile_number)  
VALUES('Mike Taylor','{"(444)-333-1234"}'),  
('Emma Garcia','{"(568)-333-5678"}'),  
('David Smith','{"(444)-333-7658","(308)-589-23458"}');  

执行上述命令后我们会得到如下消息窗口,显示这三个值已经成功插入到person_details表中。

热门文章

优秀文章