2016-05-24 24 views
6

Böyle basit bir SELECT deyimi varsa:JSON_EXTRACT'ı MySQL'de nasıl kullanabilirim ve tırnak işareti olmadan bir ipucu alabilir miyim?

SELECT JSON_EXTRACT('{"username":"Alexander"}', '$.username'); 

Ben Alexander dönmek beklenebilir ancak bunun yerine "Alexander" döndürür. Tırnaklardan nasıl kurtulabilirim? Bu işlev neden tırnakları da geri döndürüyor?

+5

için [JSON_UNQUOTE] (https://dev.mysql.com/doc/refman/5.7/en /json-modification-functions.html#function_json-unquote) veya [column- >> yol] (https://dev.mysql.com/doc/refman/5.7/en/json-search-functions.html#operator_json- satır içi yol) (MySQL 5.7.13 ve sonrası): - -> Operatör, JSON_UNQUOTE (JSON_EXTRACT()) 'ye izin verilen her yerde kullanılabilir.'. – wchiquito

cevap

0

tırnak işareti

SELECT replace(JSON_EXTRACT('{"username":"Alexander"}', '$.username'), '\"', ''); 
1

Sen bunu başarmak için JSON_UNQUOTE kullanabilirsiniz kaldırmak için onunla() yerine kullanabilirsiniz. t_name gelen kapsamı olarak JSON_UNQUOTE (JSON_EXTRACT (baz, '$ .scope')) seçmek

ref:

İlgili konular