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)常见的操作符