1. 程式人生 > >關於MySql中json_extract函數的一個特殊之處

關於MySql中json_extract函數的一個特殊之處

這樣的 oracle png json xtra 分享 支持 雙引號 字符類型

MySql自5.7之後開始支持json類型,相應的解析函數主要是json_extract(與操作符“->”等效)。

不過與其它數據庫的類似函數(如oradle的json_value)相比,當json的值是字符類型時,json_extract的結果略有不同。

在MySql中,是這樣的:

技術分享圖片

而在Oracle中,是這樣的:

技術分享圖片

可見,差別在於MySql的json_extract的返回值會帶上兩個雙引號。

而當json的值是數值型時,沒有差別。

技術分享圖片

技術分享圖片

為保持各種情況下的一致,在MySql中要解析json,還需再加上json_unquote函數以去掉雙引號:

技術分享圖片

json_unquote(json_extract())的等效操作符是“->>”。

關於MySql中json_extract函數的一個特殊之處