Postgresql中JSON数据构造与操作符实例
-- 创建一个包含JSON列的表
CREATE TABLE example_table (
id SERIAL PRIMARY KEY,
data JSON
);
-- 插入JSON数据到表中
INSERT INTO example_table (data) VALUES
('{"name": "John", "age": 30}'),
('{"name": "Jane", "age": 25}');
-- 查询JSON列,并提取键值对
SELECT data->>'name', data->>'age' FROM example_table;
-- 使用操作符@@创建JSON对象,并查询包含特定JSON对象的行
SELECT * FROM example_table WHERE data @> '{"name": "Jane"}';
-- 使用操作符#>>提取嵌套JSON对象的值
CREATE TABLE nested_example_table (
id SERIAL PRIMARY KEY,
data JSONB
);
INSERT INTO nested_example_table (data) VALUES
('{"person": {"name": "John", "age": 30}}'),
('{"person": {"name": "Jane", "age": 25}}');
SELECT data #>> '{person,name}' as name FROM nested_example_table;
这段代码展示了如何在PostgreSQL中创建一个包含JSON类型字段的表,如何插入JSON数据,如何查询JSON列以提取键值对,以及如何使用操作符@@来查询包含特定JSON对象的行。同时,还展示了如何处理嵌套的JSON对象,使用#>>操作符来提取其值。这些操作对于需要在数据库中处理JSON数据的开发者来说是非常有用的。
评论已关闭