最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

教你在PostgreSql中使用JSON字段的方法

 更新時間:2022年11月29日 17:04:13   作者:夜郎king  
這篇文章主要介紹了干貨教你在PostgreSql中使用JSON字段,通過本文可掌握在pg數(shù)據(jù)庫中如何正確使用json字段,如何進行數(shù)據(jù)查詢,在where子查詢中如何使用,以及對json值進行聚合查詢使用,需要的朋友可以參考下

通過本文可掌握在pg數(shù)據(jù)庫中如何正確使用json字段,如何進行數(shù)據(jù)查詢,在where子查詢中如何使用,以及對json值進行聚合查詢使用.

概述

JSON 代表 JavaScript Object Notation。JSON是開放的標準格式,由key-value對組成。JSON的主要用于在服務(wù)器與web應(yīng)用之間傳輸數(shù)據(jù)。新建表如下:

CREATE TABLE "public"."biz_orders" (  "ID" int8 NOT NULL DEFAULT nextval('"biz_orders_ID_seq"'::regclass),
  "info" json NOT NULL
);

表初始化語句:

INSERT INTO "biz_orders"("ID", "info") VALUES (1, '{"name":"張三","items":{"product":"啤酒","qty":6}}');
INSERT INTO "biz_orders"("ID", "info") VALUES (2, '{"name":"李四","items":{"product":"辣條","qty":8}}');
INSERT INTO "biz_orders"("ID", "info") VALUES (3, '{"name":"王五","items":{"product":"蘋果","qty":18}}');
INSERT INTO "biz_orders"("ID", "info") VALUES (4, '{"name":"趙一","items":{"product":"香蕉","qty":20}}');

使用

1、簡單查詢

select * from biz_orders;

2、查詢使用->操作符,查詢json中所有顧客作為鍵

SELECT info -> 'name' AS customer FROM biz_orders;

3、下面使用->>操作獲取所有顧客姓名作為值

SELECT info ->> 'name' AS customer FROM biz_orders;

4、根據(jù)json對象的key查詢值

SELECT
   info -> 'items' ->> 'product' as product
FROM
   biz_orders
ORDER BY
   product;

5、where查詢中使用json字段

SELECT
   info ->> 'name' AS customer
FROM
   biz_orders
WHERE
   info -> 'items' ->> 'product' = '辣條'

6、case 查詢???????

SELECT
   info ->> 'name' AS customer,
   info -> 'items' ->> 'product' AS product
FROM
   biz_orders
WHERE
   CAST (
      info -> 'items' ->> 'qty' AS INTEGER
   ) = 6

7、聚合函數(shù)???????

SELECT
  MIN( CAST ( info -> 'items' ->> 'qty' AS INTEGER ) ),
  MAX( CAST ( info -> 'items' ->> 'qty' AS INTEGER ) ),
  SUM( CAST ( info -> 'items' ->> 'qty' AS INTEGER ) ),
  AVG( CAST ( info -> 'items' ->> 'qty' AS INTEGER ) ) 
FROM
  biz_orders;

8、類型查詢???????

SELECT
  json_typeof ( info -> 'items' -> 'qty' ) 
FROM
  biz_orders;

總結(jié)

通過以上例子,知道在pg數(shù)據(jù)庫中如何存儲json數(shù)據(jù),并且掌握基本的查詢,在查詢條件中使用json,在聚合函數(shù)中使用。雖然,關(guān)系型數(shù)據(jù)庫的強項不是在于json處理,而MongoDb或者Redis等NoSQL更適合做這類處理,但是在不引入一個新數(shù)據(jù)存儲的情況下,利用現(xiàn)有架構(gòu)解決生產(chǎn)問題。隨著pg甚至mysql不斷向前發(fā)展,相信未來對于json等數(shù)據(jù)支持會越來越好,性能也會越來越高。

到此這篇關(guān)于干貨教你在PostgreSql中使用JSON字段的文章就介紹到這了,更多相關(guān)PostgreSql使用JSON字段內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • PostgreSQL與MySQL優(yōu)劣勢比較淺談

    PostgreSQL與MySQL優(yōu)劣勢比較淺談

    這篇文章主要詳細介紹了PostgreSQL與MySQL有哪些優(yōu)劣勢,文中介紹的非常詳細,對于學(xué)習(xí)有一定的幫助,感興趣的小伙伴可以參考一下
    2023-04-04
  • postgreSQL 使用timestamp轉(zhuǎn)成date格式

    postgreSQL 使用timestamp轉(zhuǎn)成date格式

    這篇文章主要介紹了postgreSQL 使用timestamp轉(zhuǎn)成date格式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • PostgreSQL新手入門教程

    PostgreSQL新手入門教程

    本文介紹PostgreSQL的安裝和基本用法,供初次使用者上手。以下內(nèi)容基于Debian操作系統(tǒng),其他操作系統(tǒng)實在沒有精力兼顧,但是大部分內(nèi)容應(yīng)該普遍適用
    2014-06-06
  • 如何在PostgreSQL中創(chuàng)建只讀權(quán)限和讀寫權(quán)限的賬號

    如何在PostgreSQL中創(chuàng)建只讀權(quán)限和讀寫權(quán)限的賬號

    一個良好的賬號管理策略對于數(shù)據(jù)庫的安全和數(shù)據(jù)的完整性至關(guān)重要,通過為不同的用戶設(shè)置適當(dāng)?shù)臋?quán)限,可以確保他們只能訪問他們需要的數(shù)據(jù),并防止對敏感數(shù)據(jù)的意外或惡意訪問,本文介紹在 PostgreSQL中創(chuàng)建只讀權(quán)限和讀寫權(quán)限的賬號的步驟和方法,感興趣的朋友一起看看吧
    2023-08-08
  • Postgresql設(shè)置遠程訪問的方法(需要設(shè)置防火墻或者關(guān)閉防火墻)

    Postgresql設(shè)置遠程訪問的方法(需要設(shè)置防火墻或者關(guān)閉防火墻)

    這篇文章主要介紹了Postgresql設(shè)置遠程訪問的方法(需要設(shè)置防火墻或者關(guān)閉防火墻),本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • 如何使用PostgreSQL進行中文全文檢索

    如何使用PostgreSQL進行中文全文檢索

    PostgreSQL被稱為是“最高級的開源數(shù)據(jù)庫”,它的數(shù)據(jù)類型非常豐富,用它來解決一些比較偏門的需求非常適合。由于PgSQL國內(nèi)的資料較少,所有本文將詳細介紹此類問題,以便后來的同學(xué)能順利使用PgSQL。
    2021-05-05
  • postgresql 賦權(quán)語句 grant的正確使用說明

    postgresql 賦權(quán)語句 grant的正確使用說明

    這篇文章主要介紹了postgresql 賦權(quán)語句 grant的正確使用說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • 對postgresql日期和時間的比較

    對postgresql日期和時間的比較

    文章介紹了在數(shù)據(jù)庫中處理日期和時間類型時的一些注意事項,包括如何將字符串轉(zhuǎn)換為日期或時間類型,以及在比較時自動轉(zhuǎn)換的情況,作者建議在使用數(shù)據(jù)庫時,根據(jù)具體情況進行適當(dāng)?shù)念愋娃D(zhuǎn)換,以避免潛在的錯誤
    2025-01-01
  • PostgreSQL如何查看事務(wù)所占有的鎖實操指南

    PostgreSQL如何查看事務(wù)所占有的鎖實操指南

    這篇文章主要給大家介紹了關(guān)于PostgreSQL如何查看事務(wù)所占有鎖的相關(guān)資料,文中通過代碼以及圖文介紹的非常詳細,對大家學(xué)習(xí)或者使用PostgreSQL具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-10-10
  • PostgreSQL 序列綁定字段與不綁定字段的區(qū)別說明

    PostgreSQL 序列綁定字段與不綁定字段的區(qū)別說明

    這篇文章主要介紹了PostgreSQL 序列綁定字段與不綁定字段的區(qū)別說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02

最新評論

曲阳县| 绥江县| 阳江市| 定结县| 二连浩特市| 株洲县| 弥勒县| 深水埗区| 寿阳县| 鸡西市| 监利县| 高安市| 南安市| 旅游| 水城县| 甘德县| 日喀则市| 吉隆县| 博客| 遂溪县| 平乡县| 河曲县| 额敏县| 九江市| 年辖:市辖区| 资源县| 巴马| 罗江县| 乐东| 宜良县| 汝南县| 开远市| 温州市| 同仁县| 同仁县| 海口市| 云阳县| 卫辉市| 夏邑县| 婺源县| 沽源县|