0
JSON配列は、MariaDBテーブルに文字列として格納されています。特定のキー値が配列内のどこに存在する場合でも、行を返すようにしたい。MariaDB JSON関数(配列あり)
私はそれが私に...
1
で望ましい結果を得ました...
set @json='[{"name":"Albert","state":"IL"},{"name":"John","state":"CA"}]'
は、次のクエリを実行し....
select json_value(@json,'$[0].name')='Albert'
を以下の試験を行いました
次のクエリでも同じ結果が得られました(最初の要素として '*'が扱われる場合があります)...
select json_value(@json,'$[*].name')='Albert'
しかし、私は状態で2番目の名前( "ジョン")を提供する場合、私はどんな結果を得ることはありません...
select json_value(@json,'$[*].name')='John'
結果...
0
だから私の観察は、配列インデックスを提供するとき、 "json_value"関数は望ましい結果を返すことができるということです。
配列インデックスを指定してキー値を検索しないようにする方法はありますか?
[dbfiddle(http://dbfiddle.uk/?rdbms=mariadb_10.2&fiddle=4620e2cf592fda2a9dd788ec5f98962aを参照し、[JSON_SEARCH](https://mariadb.com/kb/en/library/json_search/)してみてください)。 – wchiquito