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

MySQL JSON 查詢中的對象與數(shù)組技巧及查詢示例

 更新時間:2025年06月11日 11:11:49   作者:愿你天黑有燈下雨有傘  
MySQL中JSON對象和JSON 數(shù)組查詢的詳細(xì)介紹及帶有WHERE條件的查詢示例,本文給大家介紹的非常詳細(xì),mysql json查詢示例相關(guān)知識感興趣的朋友一起看看吧

MySQL 中 JSON 對象和 JSON 數(shù)組查詢的詳細(xì)介紹及帶有 WHERE 條件的查詢示例:

JSON 對象查詢

1. JSON_CONTAINS

用于檢查 JSON 對象是否包含指定的值或 JSON 對象。

  • 語法JSON_CONTAINS(json_doc, val[, path])
  • 示例: 假設(shè)有一個表 person,其中有一個 JSON 列 info,存儲了個人信息。
CREATE TABLE person (
    id INT PRIMARY KEY,
    info JSON
);
INSERT INTO person (id, info) VALUES (1, '{"name": "張三", "age": 30}');

查詢 info 列中 name"張三" 的記錄:

SELECT * FROM person WHERE JSON_CONTAINS(info, '"張三"', '$.name');

如果 info 列中包含 {"name": "張三"},則返回對應(yīng)的行。

2. JSON_EXTRACT

用于從 JSON 對象中提取指定路徑的值。

  • 語法JSON_EXTRACT(json_doc, path)
  • 示例: 查詢 info 列中 age 大于 25 的記錄
SELECT * FROM person WHERE JSON_EXTRACT(info, '$.age') > 25;

通過提取 age 的值并進(jìn)行比較,篩選出符合條件的記錄。

3. JSON_TABLE

將 JSON 對象轉(zhuǎn)換為關(guān)系型表格,便于查詢。

語法

JSON_TABLE(
    json_doc,
    path_expression
    COLUMNS(
        column_name column_type PATH json_path [on_empty] [on_error],
        ...
    )
) [AS] alias

示例

SELECT *
FROM person,
JSON_TABLE(
    info,
    '$' COLUMNS(
        name VARCHAR(50) PATH '$.name',
        age INT PATH '$.age'
    )
) AS jt
WHERE jt.age > 25;

info 列中的 JSON 數(shù)據(jù)轉(zhuǎn)換為表格格式,然后通過 WHERE 條件篩選出 age 大于 25 的記錄。

JSON 數(shù)組查詢

1. JSON_CONTAINS

同樣適用于 JSON 數(shù)組,檢查數(shù)組是否包含指定的值。

  • 語法JSON_CONTAINS(json_array, val[, path])
  • 示例: 假設(shè)有一個表 fruits,其中有一個 JSON 列 fruits_array,存儲了水果數(shù)組
CREATE TABLE fruits (
    id INT PRIMARY KEY,
    fruits_array JSON
);
INSERT INTO fruits (id, fruits_array) VALUES (1, '["apple", "banana", "orange"]');

查詢 fruits_array 列中包含 "banana" 的記錄

SELECT * FROM fruits WHERE JSON_CONTAINS(fruits_array, '"banana"');

如果 fruits_array 中包含 "banana",則返回對應(yīng)的行。

2. JSON_EXTRACT

從 JSON 數(shù)組中提取指定索引的值。

  • 語法JSON_EXTRACT(json_array, path)
  • 示例: 查詢 fruits_array 列中第二個水果為 "banana" 的記錄
SELECT * FROM fruits WHERE JSON_EXTRACT(fruits_array, '$[1]') = '"banana"';

通過提取數(shù)組中索引為 1 的值并進(jìn)行比較,篩選出符合條件的記錄。

3. JSON_TABLE

將 JSON 數(shù)組轉(zhuǎn)換為關(guān)系型表格。

語法

JSON_TABLE(
    json_doc,
    path_expression
    COLUMNS(
        column_name column_type PATH json_path [on_empty] [on_error],
        ...
    )
) [AS] alias

示例

SELECT *
FROM fruits,
JSON_TABLE(
    fruits_array,
    '$[*]' COLUMNS(
        fruit VARCHAR(50) PATH '$'
    )
) AS jt
WHERE jt.fruit = 'banana';

fruits_array 列中的 JSON 數(shù)組轉(zhuǎn)換為表格格式,然后通過 WHERE 條件篩選出包含 "banana" 的記錄。

到此這篇關(guān)于MySQL JSON 查詢中的對象與數(shù)組技巧的文章就介紹到這了,更多相關(guān)mysql json查詢內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL對相同字段創(chuàng)建不同索引解析

    MySQL對相同字段創(chuàng)建不同索引解析

    這篇文章主要為大家介紹了MySQL?對相同字段創(chuàng)建不同索引解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11
  • MySQL數(shù)據(jù)庫基礎(chǔ)入門之常用命令小結(jié)

    MySQL數(shù)據(jù)庫基礎(chǔ)入門之常用命令小結(jié)

    這篇文章主要介紹了MySQL數(shù)據(jù)庫基礎(chǔ)入門之常用命令,結(jié)合實例形式分析了MySQL數(shù)據(jù)庫管理、備份、日志常用操作命令與使用注意事項,需要的朋友可以參考下
    2020-05-05
  • Mysql使用sum()函數(shù)返回null的問題詳解

    Mysql使用sum()函數(shù)返回null的問題詳解

    MySQL的Sum()函數(shù)是用來找出所有記錄的一個字段的總和,下面這篇文章主要給大家介紹了關(guān)于Mysql使用sum()函數(shù)返回null的問題,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-01-01
  • 你知道哪幾種MYSQL的連接查詢

    你知道哪幾種MYSQL的連接查詢

    連接(join)查詢是將兩個查詢的結(jié)果以“橫向?qū)印钡姆绞胶喜⑵饋淼慕Y(jié)果,這篇文章主要給大家介紹了關(guān)于MYSQL連接查詢的相關(guān)資料,需要的朋友可以參考下
    2021-06-06
  • Mac上實現(xiàn)修改MySQL Workbench主題配色

    Mac上實現(xiàn)修改MySQL Workbench主題配色

    本文講述了Mac系統(tǒng)中Workbench主題色的調(diào)整方法,從深色主題改為淺色主題只需在命令行中執(zhí)行特定命令,反之亦然
    2026-04-04
  • mysql日期處理函數(shù)實例解析

    mysql日期處理函數(shù)實例解析

    這篇文章主要介紹了mysql日期處理函數(shù)實例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-12-12
  • mysql數(shù)據(jù)庫的五種安裝方式總結(jié)

    mysql數(shù)據(jù)庫的五種安裝方式總結(jié)

    這篇文章主要介紹了五種在不同操作系統(tǒng)上安裝和配置MySQL的方法,包括Windows版本安裝、yum倉庫安裝、二進(jìn)制本地安裝、容器平臺安裝以及源碼部署,每種方法都介紹的非常詳細(xì),需要的朋友可以參考下
    2025-03-03
  • MySQL主從復(fù)制原理與配置

    MySQL主從復(fù)制原理與配置

    主從備份是數(shù)據(jù)庫高可用性方案的一種,通過配置主服務(wù)器和從服務(wù)器來實現(xiàn)數(shù)據(jù)同步,主庫將操作寫入binlog,從庫讀取后復(fù)制數(shù)據(jù),保持一致性,配置包括修改my.cnf文件、重啟數(shù)據(jù)庫、建立連接等步驟,完成后,可以通過特定命令查看從服務(wù)器狀態(tài),確保同步成功
    2024-10-10
  • Navicat Premium如何導(dǎo)入SQL文件的方法步驟

    Navicat Premium如何導(dǎo)入SQL文件的方法步驟

    這篇文章主要介紹了Navicat Premium如何導(dǎo)入SQL文件的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • SQL字符串以及數(shù)字常用操作匯總

    SQL字符串以及數(shù)字常用操作匯總

    本篇文章是對SQL字符串以及數(shù)字的常用操作進(jìn)行了詳細(xì)的總結(jié)與分析,需要的朋友參考下
    2013-06-06

最新評論

恩平市| 乌拉特中旗| 商水县| 灵寿县| 招远市| 田林县| 西藏| 杭锦旗| 元氏县| 北票市| 通渭县| 宣化县| 屏东县| 福贡县| 奉节县| 宁蒗| 宁都县| 安新县| 鄂尔多斯市| 白玉县| 凤凰县| 来凤县| 吴江市| 那坡县| 永德县| 鄂州市| 交口县| 东乡族自治县| 连江县| 米易县| 红原县| 慈溪市| 玉田县| 中宁县| 郴州市| 柘城县| 海丰县| 阜宁县| 汝阳县| 八宿县| 长丰县|