Postgresql存放数组形式的数据

Postgres 数据库允许把字段定义为可变长度的数组。数据类型既可以是内置类型,也可以是用户自定义的类型或枚举类型。

例如:

  创建表

    create table demo(name text,subject text[]);

  插入数据

    insert into demo values ('张三', '{"语文", "数学"}');

  或

    insert into demo values ('李四', Array['语文', '数学', '英语']);

注意:正确使用单引号和双引号


 查看数据

    select * from demo;
     name |     subject      
    ------+------------------
     张三 | {语文,数学}
     李四 | {语文,数学,英语}
    (2 rows)

通过数组数据访问数据

     select name from demo where subject[3]='英语';
    select
subject[1:2] from mytable;

要在数组中查找某个特定元素值, 可以使用ANY关键词。

    select name from demo where '英语' = ANY(subject);

要查找数组中所有值都匹配某个值, 可以使用ALL。

    select name from demo where '语文' = ALL(subject);

 

 
posted @ 2018-12-03 15:22  小小奛人  阅读(6288)  评论(0编辑  收藏  举报