如何在MySQL中使用JSON_EXTRACT并获取不带引号的字符串?

Ale*_*lex 16 mysql

如果我有一个像这样的简单SELECT语句:

SELECT JSON_EXTRACT('{"username":"Alexander"}', '$.username');
Run Code Online (Sandbox Code Playgroud)

我希望它会返回Alexander,但它会返回"Alexander".我该如何摆脱报价?为什么这个函数甚至也会返回引号?

小智 33

你可以用它JSON_UNQUOTE来实现这一目标.

select JSON_UNQUOTE(JSON_EXTRACT(base, '$.scope')) as scope from t_name
Run Code Online (Sandbox Code Playgroud)

参考: