2016-12-16 60 views
1
{ 
    "Actor": { 
    "knownlanguages": [ 
     "English" 
    ] 
    } 
} 

を使用してMySQLのJSONデータ型から値=「英語」が含まれているかどうかを確認する方法このJSONは名前dataでMySQLのJSONのcolumntypeに格納されます。は「knownlanguagesは」キーは、クエリ

私の質問は、knownlanguagesキーにクエリの使用によるJSONデータ型の値Englishが含まれているかどうかをチェックする方法ですか?

答えて

-1

あなたが注意ワイルドカード%

SELECT * FROM table where data like "%English%" 

likeキーワードを使用することができます。

これはJSONフィールドknownlanguagesで検索しますが、列data

+0

が、データは{ "俳優" のようなものである場合:{ "knownlanguages":[ "フレンチ"]}、」 「お気に入り」:「[English」]}と「knownlanguages」のデータを知りたい:「[English]」 – shruthip

0

簡単ではありません。

SELECT * FROM table WHERE JSON_CONTAINS(json, '"English"', "$.Actor.knownlanguages") 

または(あなたがしなければならないものに応じて):

SELECT JSON_CONTAINS(json, '"English"', "$.Actor.knownlanguages") FROM table 

参照:https://dev.mysql.com/doc/refman/5.7/en/json-search-functions.html