詳解如何用SQL取出字段內(nèi)是json的數(shù)據(jù)
未嵌套的Json取值
假如現(xiàn)在有表TableA,其中一個(gè)字段叫info,字段內(nèi)容如下:
{"name":"zhangsan","age":28,"class":1}使用JSON_EXTRACT()函數(shù)取出name的話,寫法如下:
select JSON_EXTRACT(info, '$.name') from TableA;
但取值有一個(gè)問題,就是取出來如果是字符串,字符串的兩邊會帶有雙引號。那么如何去掉雙引號?
使用JSON_UNQUOT()寫法如下:
select JSON_UNQUOTE(JSON_EXTRACT(info, '$.name')) from TableA;
嵌套的Json取值
有嵌套JSON的話,只需要加“.”即可,比如有一個(gè)字段info,內(nèi)容如下:
{"name":"zhangsan","age":28,"class":1,"other":{"book":"鋼鐵是怎樣練成","music":"我記得"}}要取出其他信息中歌曲名的話,如下面這樣寫:
select JSON_UNQUOTE(JSON_EXTRACT(info, '$.other.music')) from TableA;
到此這篇關(guān)于詳解如何用SQL取出字段內(nèi)是json的數(shù)據(jù)的文章就介紹到這了,更多相關(guān)SQL取出json的數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
一文詳解如何重置你的MySQL或MariaDB的root密碼
本文主要介紹了如何重置MySQL和MariaDB的root密碼,當(dāng)你忘記或者丟失了數(shù)據(jù)庫的root密碼時(shí),只要你可以訪問服務(wù)器并擁有一個(gè)sudo-enabled用戶賬戶,你就可以恢復(fù)訪問權(quán)限并重置密碼,需要的朋友可以參考下2024-10-10
Ubuntu Server下MySql數(shù)據(jù)庫備份腳本代碼
為了mysql數(shù)據(jù)庫的安全,我們需要定時(shí)備份mysql數(shù)據(jù)庫,這里提供下腳本代碼,需要的朋友可以參考下2013-06-06
解決mysql問題:由于找不到MSVCR120.dll,無法繼續(xù)執(zhí)行代碼
這篇文章給大家分享解決mysql問題:由于找不到MSVCR120.dll,無法繼續(xù)執(zhí)行代碼.通過重新安裝程序解決此問題,下面小編把問題記錄及解決過程分享給大家,需要的朋友參考下吧2021-06-06
MySQL中使用group by 是總是出現(xiàn)1055的錯(cuò)誤(推薦)
這篇文章主要介紹了MySQL中使用group by 是總是出現(xiàn)1055的錯(cuò)誤,小編通過查閱相關(guān)資料才把問題解決,今天小編記錄下分享到腳本之家平臺,需要的朋友可以參考下2020-02-02
MySQL忘記root密碼錯(cuò)誤號碼1045的解決辦法
這篇文章主要介紹了MySQL忘記root密碼錯(cuò)誤號碼1045的解決辦法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08
MySQL多列日期同步更新的五種實(shí)現(xiàn)方法
當(dāng)遇到會員有效期、服務(wù)周期、數(shù)據(jù)版本等需要批量更新日期字段時(shí),如何精準(zhǔn)控制日期部分而保留原始時(shí)間?所以本文給大家介紹了MySQL多列日期同步更新的五種實(shí)現(xiàn)方法,需要的朋友可以參考下2025-05-05

