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

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

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

下面用這個(gè)表來(lái)執(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)春市\(zhòng)", \"district\": \"綠園區(qū)\", \"province\": \"吉林省\"}');
INSERT INTO `users` VALUES (4, '劉六', '{\"city\": \"昌平區(qū)\", \"province\": \"北京市\(zhòng)"}');
INSERT INTO `users` VALUES (5, '張三三', '[{\"city\": \"石家莊市\(zhòng)", \"tags\": [\"家\", \"公司\", \"學(xué)校\"], \"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, '王五六', '[\"家\", \"公司\", \"學(xué)校\"]');

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

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

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

2、對(duì)象操作方法進(jìn)行查詢:json字段->'$.json屬性'

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

相關(guān)文章

  • MySQL索引與事務(wù)定義到使用詳解

    MySQL索引與事務(wù)定義到使用詳解

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

    mysql 修改密碼和設(shè)置允許遠(yuǎn)程登錄

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

    mysql鎖定單個(gè)表的方法

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

最新評(píng)論