mysql查詢字段類型為json時(shí)的兩種查詢方式
表結(jié)構(gòu)如下:
id varchar(32) info json
數(shù)據(jù):
id = 1 info = {"age": "18","disname":"小明"}
--------------------------------------------
現(xiàn)在我需要獲取info中disanme的值,查詢方法有:
1.
select t.id,JSON_EXTRACT(t.info,'$.disname') as disname from tableName t where 1=1
結(jié)果:
id = 1, disname=“小明”
以上sql查出的disname值是帶有雙引號(hào)的,有時(shí)我們不需要雙引號(hào),此時(shí)就需要用到下面這種方式。
2.
select t.id,t.info ->> '$.disname' as disname from tableName t where 1=1
結(jié)果:
id = 1 , disname=小明
ps:下面看下mysql查詢json字段
建表語(yǔ)句
Create Table CREATE TABLE `test` ( `id` int(10) , `user` json DEFAULT NULL COMMENT '用戶信息', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8
插入數(shù)據(jù)
需要注意的是,json數(shù)據(jù)外面需要單引號(hào)來(lái)區(qū)別
INSERT INTO test (id,USER) VALUES(1,'{"name": "tom", "age": 18, "money": 3000}'); INSERT INTO test (id,USER) VALUES(2,'{"name": "jack", "age": 20, "money": 100}'); INSERT INTO test (id,USER) VALUES(3,'{"name": "tony", "age": 21, "money": 100}'); INSERT INTO test (id,USER) VALUES(4,'{"name": "danny", "age": 21, "money": 20}'); INSERT INTO test (id,USER) VALUES(5,'{"name": "janny", "age": 23, "money": 20}');
表數(shù)據(jù)如下
查詢語(yǔ)句
SELECT id,JSON_EXTRACT(USER,'$.name')FROM test;
下面是查詢結(jié)果
總結(jié)
以上所述是小編給大家介紹的mysql查詢字段類型為json時(shí)的兩種查詢方式 ,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
相關(guān)文章
MYSQL突破secure_file_priv寫(xiě)shell問(wèn)題
這篇文章主要介紹了MYSQL突破secure_file_priv寫(xiě)shell問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01MySQL?5.5,?5.6,?5.7,?8.0?特性對(duì)比
MySQL是一個(gè)廣泛使用的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),你知道各個(gè)版本之前的區(qū)別嗎,本文主要介紹了MySQL?5.5,?5.6,?5.7,?8.0?特性對(duì)比,具有一定的參考價(jià)值,感興趣的可以了解一下2024-04-04Kubernetes中實(shí)現(xiàn) MySQL 讀寫(xiě)分離的詳細(xì)步驟
Kubernetes中實(shí)現(xiàn)MySQL的讀寫(xiě)分離通過(guò)主從復(fù)制架構(gòu),利用Kubernetes部署MySQL主節(jié)點(diǎn)和從節(jié)點(diǎn),并通過(guò)Service實(shí)現(xiàn)讀寫(xiě)分離,提高數(shù)據(jù)庫(kù)性能和可維護(hù)性2024-11-11win10下mysql 8.0.11壓縮版安裝詳細(xì)教程
這篇文章主要為大家詳細(xì)介紹了win10下mysql 8.0.11壓縮版安裝詳細(xì)教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05淺談?dòng)唵沃貥?gòu)之 MySQL 分庫(kù)分表實(shí)戰(zhàn)篇
這篇文章主要介紹了 MySQL 分庫(kù)分表方法的相關(guān)資料,需要的朋友可以參考下面文章內(nèi)容,希望能幫助到你2021-09-09在?CentOS?7?下如何使用?Ansible?Playbook?實(shí)現(xiàn)?MySQL?8.0.34?的
要在?CentOS?7?下使用?Ansible?Playbook?實(shí)現(xiàn)?MySQL?8.0.34?的二進(jìn)制安裝,需要先下載?MySQL?8.0.34?的二進(jìn)制包,并將其上傳至目標(biāo)服務(wù)器,對(duì)MySQL?8.0.34?二進(jìn)制安裝過(guò)程感興趣的朋友跟隨小編一起看看吧2024-03-03