欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

關于Mysql中json數(shù)據(jù)類型的查詢操作指南

 更新時間:2023年07月03日 10:42:23   作者:msw、  
mysql在5.7版本之后就開始支持json數(shù)據(jù)類型,并且mysql8.0版本對json的處理已經(jīng)做的非常完善了,json數(shù)據(jù)類型的優(yōu)點缺點可自己查詢,本文主要介紹一些關于json數(shù)據(jù)類型的查詢操作

下面用這個表來執(zhí)行查詢演示:

CREATE TABLE `users` (
  `id` int unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL COMMENT '姓名',
  `address` json NOT NULL COMMENT '住址',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

插入幾條數(shù)據(jù)

INSERT INTO `users` VALUES (1, '張三', '{\"city\": \"石家莊市\(zhòng)", \"tags\": [\"家\", \"公司\"], \"district\": \"橋西區(qū)\", \"province\": \"河北省\"}');
INSERT INTO `users` VALUES (2, '李四', '{\"city\": \"廣州市\(zhòng)", \"tags\": [\"宿舍\"], \"district\": \"珠海區(qū)\", \"province\": \"廣州省\"}');
INSERT INTO `users` VALUES (3, '王五', '{\"city\": \"長春市\(zhòng)", \"district\": \"綠園區(qū)\", \"province\": \"吉林省\"}');
INSERT INTO `users` VALUES (4, '劉六', '{\"city\": \"昌平區(qū)\", \"province\": \"北京市\(zhòng)"}');
INSERT INTO `users` VALUES (5, '張三三', '[{\"city\": \"石家莊市\(zhòng)", \"tags\": [\"家\", \"公司\", \"學校\"], \"district\": \"橋西區(qū)\", \"province\": \"河北省\"}, {\"city\": \"鄭州市\(zhòng)", \"tags\": [\"宿舍\"], \"district\": \"橋東區(qū)\", \"province\": \"河南省\"}]');
INSERT INTO `users` VALUES (6, '李四四', '[{\"city\": \"廣州市\(zhòng)", \"tags\": [\"宿舍\"], \"district\": \"珠海區(qū)\", \"province\": \"廣州省\"}, {\"city\": \"廣州市\(zhòng)", \"district\": \"珠海區(qū)\", \"province\": \"廣州省\"}]');
INSERT INTO `users` VALUES (7, '王五六', '[\"家\", \"公司\", \"學校\"]');

查詢json對象指定屬性值的數(shù)據(jù)

1、函數(shù)查詢:json_extract(json字段, '$.json屬性')

select * from users where json_extract(address, '$.province') = "河北省";

2、對象操作方法進行查詢:json字段->'$.json屬性'

select * from users where address->'$.province' = "河北省";

查詢json數(shù)組指定下標值的數(shù)據(jù)

1、數(shù)組操作方式查詢:字段->'$[0]'

select  * from users where address->'$[0]'= "家";

根據(jù)JSON對象里面的屬性個數(shù)查詢

1、函數(shù)查詢:json_length(json字段)

select * from users where json_length(address) = 2;

根據(jù)JSON數(shù)組里面的數(shù)組長度查詢

1、函數(shù)查詢:json_length(json字段)

select * from users where json_length(address) = 2;

查詢JSON對象屬性值為數(shù)組的任意項存在指定值查詢

1、函數(shù)查詢:JSON_CONTAINS(json字段,JSON_OBJECT('json數(shù)組屬性', '內(nèi)容'))

select * from users where JSON_CONTAINS(address,JSON_OBJECT('tags', '家'));

查詢JSON數(shù)組里面對象屬性任意項存在指定屬性的數(shù)據(jù)

select * from users where address->'$[*].city' is not null;

查詢JSON對象存在指定屬性的數(shù)據(jù)

select * from users where address->'$.tags' is not null;

到此這篇關于關于Mysql中json數(shù)據(jù)類型的查詢操作指南的文章就介紹到這了,更多相關Mysql json類型數(shù)據(jù)查詢內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • MySQL索引與事務定義到使用詳解

    MySQL索引與事務定義到使用詳解

    這篇文章主要介紹了MySQL數(shù)據(jù)庫索引事務,索引是為了加速對表中數(shù)據(jù)行的檢索而創(chuàng)建的一種分散的存儲結(jié);事物是屬于計算機中一個很廣泛的概念,一般是指要做的或所做的事情,下面我們就一起進入文章了解具體內(nèi)容吧
    2022-12-12
  • mysql 修改密碼和設置允許遠程登錄

    mysql 修改密碼和設置允許遠程登錄

    這篇文章主要介紹了mysql 修改密碼和設置允許遠程登錄的相關資料,需要的朋友可以參考下
    2015-07-07
  • mysql鎖定單個表的方法

    mysql鎖定單個表的方法

    這篇文章主要介紹了mysql鎖定單個表的方法 ,需要的朋友可以參考下
    2014-05-05
  • SQL?日期處理視圖創(chuàng)建(常見數(shù)據(jù)類型查詢防范?SQL注入)

    SQL?日期處理視圖創(chuàng)建(常見數(shù)據(jù)類型查詢防范?SQL注入)

    這篇文章主要為大家介紹了SQL日期處理和視圖創(chuàng)建:常見數(shù)據(jù)類型、示例查詢和防范?SQL?注入方法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-12-12
  • 教你如何讓spark?sql寫mysql的時候支持update操作

    教你如何讓spark?sql寫mysql的時候支持update操作

    spark提供了一個枚舉類,用來支撐對接數(shù)據(jù)源的操作模式,本文重點給大家介紹如何讓spark?sql寫mysql的時候支持update操作,本文通過實例代碼給大家介紹的非常詳細,需要的朋友參考下吧
    2022-02-02
  • 一文詳解如何在MySQL中創(chuàng)建函數(shù)

    一文詳解如何在MySQL中創(chuàng)建函數(shù)

    這篇文章主要為大家介紹了一文詳解如何在MySQL中創(chuàng)建函數(shù),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05
  • 數(shù)據(jù)庫中update與delete使用表別名的深入研究

    數(shù)據(jù)庫中update與delete使用表別名的深入研究

    本文介紹了UPDATE和DELETE?SQL語句在Oracle,?SQLite,?PostgreSQL,?MYSQL,?mariadb等數(shù)據(jù)庫系統(tǒng)中的執(zhí)行差異,文中通過代碼介紹的非常詳細,對數(shù)據(jù)庫開發(fā)和維護人員有指導意義,需要的朋友可以參考下
    2024-10-10
  • mysql創(chuàng)建數(shù)據(jù)庫,添加用戶,用戶授權(quán)實操方法

    mysql創(chuàng)建數(shù)據(jù)庫,添加用戶,用戶授權(quán)實操方法

    在本篇文章里小編給大家整理的是關于mysql創(chuàng)建數(shù)據(jù)庫,添加用戶,用戶授權(quán)實操方法相關知識點,需要的朋友們學習下。
    2019-10-10
  • MySQL實例精講單行函數(shù)以及字符數(shù)學日期流程控制

    MySQL實例精講單行函數(shù)以及字符數(shù)學日期流程控制

    SQL函數(shù)即數(shù)據(jù)庫的內(nèi)置函數(shù),可以運用在SQL語句中實現(xiàn)特定的功能。SQL單行函數(shù)對于每一行數(shù)據(jù)進行計算后得到一行輸出結(jié)果。SQL單行函數(shù)根據(jù)數(shù)據(jù)類型分為字符函數(shù)、數(shù)字函數(shù)、日期函數(shù)、轉(zhuǎn)換函數(shù),另外還有一些別的函數(shù)
    2021-10-10
  • 生產(chǎn)環(huán)境MySQL索引時效的排查過程

    生產(chǎn)環(huán)境MySQL索引時效的排查過程

    這篇文章主要介紹了生產(chǎn)環(huán)境MySQL索引時效的排查過程,文章根據(jù)SQL查詢耗時特別長,看了執(zhí)行計劃發(fā)現(xiàn)沒有走索引的問題展開詳細介紹,需要的朋友可以參考一下
    2022-04-04

最新評論