目标: - json_extract不存在错误。MySQL错误代码:1305. MySQL客户端版本中不存在FUNCTION JSON_EXTRACT:5.5.52
我确实有这样的消息体。
< message type = "chat"
to = "[email protected]"
from = "[email protected]/9fs4kgn090" > <body> {
"opponent_xmpp_id": "[email protected]",
"latest_message_id": "6233"
} < /body><active>http://jabber.org/protocol/chatstates < /active></message >
我试图提取opponent_xmpp_id和latest_message_id。
因为我写了如下的查询。
SELECT LEFT(ExtractValue(stanza, "//@from"),LOCATE("@",ExtractValue(stanza, "//@from")) - 1),
LEFT(ExtractValue(stanza, "//@to"),LOCATE("@",ExtractValue(stanza, "//@to")) - 1),
ExtractValue(stanza, "//body"),
ExtractValue(stanza, "//@chattype"),
TRIM(BOTH '"' FROM json_extract(ExtractValue(stanza, "//body"), '$.opponent_xmpp_id')) AS opponent_xmpp_id,
json_extract(ExtractValue(stanza,"//body"),'$.latest_message_id') AS latest_message_id
FROM
ofOffline
导致错误
1305 - 按我搜索了唯一支持> MYsql的5.7版本功能databaseName.json_extract不存在
。
那么在MySQL客户端版本中有没有类似json_extract的作用:5.5.52?
你试过json_decode吗? – e4c5
感谢您的及时答复!但不幸的是,你已经建议我已经更新服务器版本到5.7.16&我需要把它与mysql只与使用触发器,所以最终它与json_extract函数与更新后的MySQL服务器版本:5.7.16。 –
是的! +1并被接受!非常感谢您的帮助! :) –