不灭的火

革命尚未成功,同志仍须努力下载JDK17

作者:AlbertWen  添加时间:2025-04-12 16:12:18  修改时间:2025-04-24 16:24:07  分类:01.PostgreSQL  编辑

1.软件版本

  • PostgreSQL:9.6
  • Navicat:15

2.新建表

2.1 方式一:使用Navicat

字体类型

字段类型找不到

以varchar为例,在Navicat中是找不到数组类型的。只能看到varchar类型

自行设置

想定义成数组类型也很简单,直接在后面添加一个 [] 的符号

保存

随意输入一个表名后保存

注意点

保存以后你会发现代表数组的符号 [] 消失了,同时字符串长度变成了0。这时候不是没设置成功,只是因为navicat显示不出来。

2.2 方式二:SQL语句

CREATE TABLE test ( arry VARCHAR[] );

(1)插入

使用 ARRAY

INSERT INTO test
    VALUES
	    (ARRAY[ 'x', 'y' ]);

使用 {}

注意单引号双引号的位置

INSERT INTO test
    VALUES
	    ('{"x","y"}');

(2)查询

查询数组字段

select arry from test;

查找结果如图所示

查询数组下标

千万注意:我们在大部分语言中,数组下标都从0开始,但是在pgsql的数组中,数组下标是从1开始

select arry[1] from test;

(3)条件语句

查询要求:数组中某一个与 y 相等

select * from test where arry @>'{"y"}';

(4)常见的操作符