2015-11-04 10 views
6

JSON文字列(例:["ART"、 "LIT"]など)を持つデータベースが1つあります。 json_containsを使って検索したい。しかし引数2のJSONテキストが無効です - MySQL 5.7.8のjson_contains

、私は試してみてください。関数の引数json_contains 2で

無効なJSONテキスト:言って

json_contains(\`column_name`,"ART") 

このエラー "無効な値を" 「ART」の位置0にある。

json_containsは、文字列だけで "ART"の代わりに数字にエラーが発生しないことに注意してください。これを修正/回避するために私が何をすることができますか?

答えて

12

明らかに、文字列とは異なる整数を扱います。 json_contains( `column_name`、" 1 ")は有効な呼び出しですが、" ART "が含まれているかどうかを確認するには、json_contains(` column_name`、 '"ART"')を使用する必要があります。

問題が解決しました。

+1

https://dev.mysql.com/doc/refman/5.7/en/json-search-functions.html valはまた、JSONオブジェクトタイプ ' "ART"' です – odedsh

+2

が、そのためにありがとうございます。それは私のナットを運転していたフリージンでした。 – racl101