以下教大家如何用 PostgreSQL 操作 JSON

算是 SQL 與 NoSQL 結合的使用
(以下示範:新增、查詢

傳統的欄位屬性有text, int ....等等,現在多一個 json 與 jsonb

比較建議大家使用jsonb , 因為性能較好, 是二進制存取

先來看SQL語法如何做到吧!

詳細可參考官方文檔 (9.4 版):http://www.postgresql.org/docs/9.4/static/functions-json.html

test=# CREATE TABLE users (name text, love json);
CREATE TABLE
test=# INSERT INTO users VALUES ('路人', '{"食物":{"中餐":["小籠包","牛肉麵"],"西餐":"提拉米蘇"},"程式語言":["Java","C#","Unity"]}');
INSERT 0 1
test=# SELECT * FROM users;
name | love
------+------------------------------------------------------------------------------------------
路人 | {"食物":{"中餐":["小籠包","牛肉麵"],"西餐":"提拉米蘇"},"程式語言":["Java","C#","Unity"]}
(1 筆資料列)


test=# SELECT love #>> '{食物}' FROM users;
?column?
------------------------------------------------
{"中餐":["小籠包","牛肉麵"],"西餐":"提拉米蘇"}
(1 筆資料列)


test=# SELECT love #>> '{食物, 中餐}' FROM users;
?column?
---------------------
["小籠包","牛肉麵"]
(1 筆資料列)


test=# SELECT love #>> '{食物, 中餐, 0}' FROM users;
?column?
----------
小籠包
(1 筆資料列)

------------------------------------------------------------------------------

圖片:


未命名2  






創作者介紹
創作者 黃彥霖 的頭像
黃彥霖

彥霖 實驗筆記

黃彥霖 發表在 痞客邦 留言(0) 人氣()