亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

MySQL json相關函數及功能詳解

 更新時間:2023年11月09日 11:49:29   作者:唯丹之心  
MySQL提供了一系列的JSON函數,用于解析、提取、修改和操作JSON數據,以下是一些常用的JSON函數及其功能,需要的朋友可以參考下

MySQL提供了一系列的JSON函數,用于解析、提取、修改和操作JSON數據。以下是一些常用的JSON函數及其功能。

以下所有操作都使用該表(zone_test)用來演示:

一:JSON_OBJECT(key1,value1,key2,value2)

1、作用:

用來創(chuàng)建一個JSON對象。可以指定鍵值對作為參數,返回一個JSON對象。

鍵和值可以是字符串、數字、布爾值等。

2、使用:

創(chuàng)建一個JSON對象:

可以在INSERTUPDATE語句中使用JSON_OBJECT()函數來插入或更新JSON字段的值:

INSERT INTO zone_test (name,age,drss_style) VALUES('clothes': '衛(wèi)衣', 'hat': '棒球帽', 'trousers': '牛仔褲', 'shoe': '板鞋'))

二:JSON_ARRAY(value,value1,value2)

1、作用:

創(chuàng)建一個JSON數組??梢灾付ǘ鄠€值作為參數,返回一個JSON數組。

值可以是字符串、數字、布爾值等。

2、使用:

創(chuàng)建一個JSON數組

可以在INSERT或UPDATE語句中使用JSON_ARRAY()函數來插入或更新JSON字段的值

INSERT INTO zone_test (name,age,drss_style,girl_friend) VALUES('王二麻子',48,JSON_OBJECT('帽子','棒球帽'),JSON_ARRAY('小紅','小黃','小紫'))

三:JSON_EXTRACT(json_doc, path)

1、作用:

從JSON文檔中提取指定路徑的值。

json_doc是JSON文檔,path是要提取的JSON鍵的路徑。

請注意,JSON鍵的路徑必須用引號括起來,并且路徑的開始必須是$。

2、使用:

例如:我想要知道所有人的帽子都是什么?

SELECT name,JSON_EXTRACT(drss_style, '$.hat') as hat from zone_test

四:JSON_SET(json_doc, path, value)

1、作用:

設置JSON文檔中指定路徑的值。

如果路徑存在,則替換現有的值;如果路徑不存在,則添加新的鍵值對

請注意,JSON鍵的路徑必須用引號括起來,并且路徑的開始必須是$

2、使用:

例如:我想把李四的帽子改成“草帽”。

UPDATE zone_test SET drss_style = JSON_SET(drss_style,'$.hat','草帽') where name ='李四'

五:JSON_INSERT(json_doc, path, value)

1、作用:

在JSON文檔中指定路徑處插入一個新的鍵值對。

如果路徑存在,則插入新的鍵值對;如果路徑不存在,則不做任何操作

請注意,JSON鍵的路徑必須用引號括起來,并且路徑的開始必須是$

2、使用:

例如:我想再drss_style新增一個新的鍵值對,手表。

UPDATE zone_test SET drss_style = JSON_INSERT(drss_style,'$.watch','華為手表')

六:JSON_REMOVE(json_doc, path)

1、作用:

從JSON文檔中刪除指定路徑的鍵值對。

如果路徑存在,則刪除指定的鍵值對;如果路徑不存在,則不做任何操作。

2、使用:

例如:我想刪除王二麻子的watch這個鍵值對。

UPDATE zone_test SET drss_style = JSON_REMOVE(drss_style,'$.watch') where name='王二麻子'

七:JSON_REPLACE(json_doc, path, value)

1、作用:

替換JSON文檔中指定路徑的值。

如果路徑存在,則替換現有的值;如果路徑不存在,則不做任何操作。
【跟JSON_SET的區(qū)別:json_set如果路徑不存在,就新增】

2、使用:

例如:修改王二麻子的帽子跟手表這2項

UPDATE zone_test SET drss_style = JSON_REPLACE(drss_style,'$.watch','小米手表') where name='王二麻子';
UPDATE zone_test SET drss_style = JSON_REPLACE(drss_style,'$.hat','太陽帽') where name='王二麻子';

八:JSON_ARRAY_APPEND(json_doc, path, value)

1、作用:

在JSON文檔中指定路徑處的數組末尾追加一個新的值。

如果路徑存在且是一個數組,則在數組末尾追加新的值;

如果路徑不存在或不是一個數組,則不做任何操作。

2、使用:

例如:在boy_friend里追加一個數據

UPDATE zone_test SET drss_style = JSON_ARRAY_APPEND(drss_style,'$.boy_friend','吳磊') where name='王二麻子';

九:JSON_ARRAY_INSERT(json_doc, path, value)

1、作用:

在JSON文檔中指定路徑處的數組中插入一個新的值。

如果路徑存在且是一個數組,則在指定索引處插入新的值;

如果路徑不存在或不是一個數組,則不做任何操作。

2、使用:

例如:在霍建華跟吳磊中間插入一個黃凱。

UPDATE zone_test SET drss_style = JSON_ARRAY_INSERT(drss_style,'$.boy_friend[2]','黃凱') where name='王二麻子';

十:JSON_ARRAY_REMOVE(json_doc, path)

1、作用:

從JSON文檔中指定路徑處的數組中刪除一個值。

如果路徑存在且是一個數組,并且指定的索引處有一個值,則刪除該值;

如果路徑不存在或不是一個數組,或者指定的索引處沒有值,則不做任何操作。

2、使用:

例如:把boy_friend里的霍建華刪除掉。

UPDATE zone_test SET drss_style = JSON_ARRAY_REMOVE(drss_style,'$.boy_friend[1]') where name='王二麻子';

到此這篇關于MySQL json相關函數詳解的文章就介紹到這了,更多相關MySQL json相關函數內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • MySQL gh-ost DDL 變更工具的實現

    MySQL gh-ost DDL 變更工具的實現

    本文主要介紹了MySQL gh-ost DDL變更工具的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2025-02-02
  • MySql 5.6.36 64位綠色版安裝圖文教程

    MySql 5.6.36 64位綠色版安裝圖文教程

    這篇文章主要介紹了MySql 5.6.36 64位綠色版安裝圖文教程,需要的朋友可以參考下
    2017-05-05
  • mysql的聯合索引(復合索引)的實現

    mysql的聯合索引(復合索引)的實現

    這篇文章主要介紹了mysql的聯合索引(復合索引)的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03
  • 高性能MySQL讀書筆記 找出誰持有鎖

    高性能MySQL讀書筆記 找出誰持有鎖

    周末重讀了一遍《高性能MySQL》,發(fā)現有些知識點看過便忘了,沒有實際動手操作一遍就是記不牢,所以今天動手操作了一下“找出誰持有鎖”,并把實驗步驟記錄下來,有興趣的網友可以參照一二。
    2011-01-01
  • Mysql中 IFNULL函數的使用詳解

    Mysql中 IFNULL函數的使用詳解

    IFNULL()函數在MySQL中用來檢查第一個表達式是否為NULL,非NULL則返回第一個值,否則返回第二個值,本文就來詳細的介紹一下如何使用,感興趣的可以了解一下
    2024-09-09
  • windows下安裝mysql-8.0.18-winx64的教程(圖文詳解)

    windows下安裝mysql-8.0.18-winx64的教程(圖文詳解)

    這篇文章主要介紹了windows下安裝mysql-8.0.18-winx64,需要的朋友可以參考下
    2019-12-12
  • Navicat數據存放位置和備份數據庫路徑設置方式

    Navicat數據存放位置和備份數據庫路徑設置方式

    這篇文章主要介紹了Navicat數據存放位置和備份數據庫路徑設置方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • MySQL 5.7增強版Semisync Replication性能優(yōu)化

    MySQL 5.7增強版Semisync Replication性能優(yōu)化

    這篇文章主要介紹了MySQL 5.7增強版Semisync Replication性能優(yōu)化,本文著重講解支持發(fā)送binlog和接受ack的異步化、支持在事務commit前等待ACK兩項內容,需要的朋友可以參考下
    2015-05-05
  • 一文搞懂什么是MySQL前綴索引

    一文搞懂什么是MySQL前綴索引

    所謂前綴索引,說白了就是對文本的前幾個字符建立索引,有點類似于?Oracle?中對字段使用?Left?函數來建立函數索引,只不過?MySQL?的這個前綴索引在查詢時是內部自動完成匹配的。本文將通過示例詳細聊聊前綴索引,需要的可以參考一下
    2022-09-09
  • MySQL解決Navicat設置默認字符串時的報錯問題

    MySQL解決Navicat設置默認字符串時的報錯問題

    本文主要介紹了MySQL解決Navicat設置默認字符串時的報錯,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-06-06

最新評論