Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1323500
  • 博文数量: 185
  • 博客积分: 50
  • 博客等级: 民兵
  • 技术积分: 3934
  • 用 户 组: 普通用户
  • 注册时间: 2007-09-11 13:11
个人简介

iihero@ChinaUnix, ehero.[iihero] 数据库技术的痴迷爱好者. 您可以通过iihero AT qq.com联系到我 以下是我的三本图书: Sybase ASE in Action, Oracle Spatial及OCI高级编程, Java2网络协议内幕

文章分类

全部博文(185)

文章存档

2014年(4)

2013年(181)

分类: 云计算

2013-07-24 10:41:57

其解决方案就是使用hstore类型,使用它,先得创建对应的扩展。

下面只列出简单的使用示例:

iihero=# create extension hstore;
CREATE EXTENSION
iihero=#
iihero=# select 'a=>1,b=>2'::hstore;
  hstore
--------------------
 "a"=>"1", "b"=>"2"
(1 row)

iihero=# insert into tjson values(1, 'a=>1, b=>2, c=>3'::hstore);
INSERT 0 1
iihero=# insert into tjson values(2, 'a=>2, b=>3, c=>4'::hstore);
INSERT 0 1
iihero=# select * from tjson where col2 @>'a=>1';
 id | col2
----+------------------------------
  1 | "a"=>"1", "b"=>"2", "c"=>"3"
(1 row)

iihero=# select * from tjson where col2 @>'a=>1' and col2 @>'b=>2';
 id | col2
----+------------------------------
  1 | "a"=>"1", "b"=>"2", "c"=>"3"
(1 row)

所不同的,只是语法表现形式的不同。还可以充分利用索引。

阅读(3622) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~