【PostgreSQL】PostgreSQL hstore类型数据增删改查

1、登陆数据库

psql -U postgres -d postgres

【PostgreSQL】PostgreSQL hstore类型数据增删改查_第1张图片

2、创建数据库hstore,并安装extension

create database hstore;
create extension hstore;

【PostgreSQL】PostgreSQL hstore类型数据增删改查_第2张图片

3、建表

create table users(
	id serial,
	info hstore
);

【PostgreSQL】PostgreSQL hstore类型数据增删改查_第3张图片

4、插入数据

insert into users values(1,'"name"=>"zhangsan","age"=>"20"');

【PostgreSQL】PostgreSQL hstore类型数据增删改查_第4张图片

5、查询数据

select info from users;

【PostgreSQL】PostgreSQL hstore类型数据增删改查_第5张图片

6、增加数据

update users set info = info || '"company"=>"Qunar"' :: hstore;

【PostgreSQL】PostgreSQL hstore类型数据增删改查_第6张图片

7、删除数据

update users set info = delete(info, 'company');

【PostgreSQL】PostgreSQL hstore类型数据增删改查_第7张图片

8、将key值转为set输出。

select skeys(info) from users;

【PostgreSQL】PostgreSQL hstore类型数据增删改查_第8张图片

9、将key值转为array输出。

select akeys(info) from users;

【PostgreSQL】PostgreSQL hstore类型数据增删改查_第9张图片

10、将value值转为set输出。

select svals(info) from users;

【PostgreSQL】PostgreSQL hstore类型数据增删改查_第10张图片

11、将value值转为array输出。

select avals(info) from users;

【PostgreSQL】PostgreSQL hstore类型数据增删改查_第11张图片

12、将hstore值转为array输出。

select avals(info) from users;

【PostgreSQL】PostgreSQL hstore类型数据增删改查_第12张图片

13、查询age20的所有记录。

查询之前再入两条数据

insert into users values(1,'"name"=>"lisi","age"=>"20"');
insert into users values(1,'"name"=>"wangwu","age"=>"21"');
查询
select * from users where info@'age=>20';

 【PostgreSQL】PostgreSQL hstore类型数据增删改查_第13张图片

文档参考:http://www.postgresql.org/docs/current/static/hstore.html

你可能感兴趣的:(ubuntu,PostgreSQL,hstore)