如何取出该字段数据id的数字,json_extract试过了,不行。

"{"source":"self","id":"13","name":"01.mp4","length":0}"
"{"source":"self","id":"13","name":"01.mp4","length":0}"
"{"size":3556197,"length":0,"source":"self","status":"none","name":"\u662f\u662f\u662f1.mp4","id":9}"
"{"size":3869713,"length":0,"source":"self","status":"none","name":"\u662f\u662f\u662f2.mp4","id":10}"

使用fastJson

select regexp_substr(字段,'id:["][0-9]+') from table

估计你的表达式没写正确!


mysql> set @m0_61364557='{"source":"self","id":"13","name":"01.mp4","length":0}';
Query OK, 0 rows affected (0.00 sec)

mysql> select JSON_EXTRACT(@m0_61364557, "$.id");
+------------------------------------+
| JSON_EXTRACT(@m0_61364557, "$.id") |
+------------------------------------+
| "13"                               |
+------------------------------------+
1 row in set (0.00 sec)

mysql>