Cari integer yang sepadan dalam JSON.
P粉252116587
P粉252116587 2023-07-25 08:47:02
0
1
506
<p>Saya mahu mencari 123 dalam rentetan JSON dalam MySQL. </p><p>Ini adalah pertanyaan saya:</p><p><br /></p> <pre class="brush:php;toolbar:false;">SELECT * DARIPADA `laporan` WHERE JSON_CONTAINS(json_data, 123, "$.respCode");</pre> <p>Apabila saya menjalankan kod ini, saya mendapat ralat berikut: </p> <blockquote> <pre class="brush:php;toolbar:false;">Kod Ralat: 3146. Jenis data tidak sah untuk data JSON dalam argumen 1 hingga fungsi json_contains; rentetan JSON atau jenis JSON diperlukan 0.020 saat</pre> </blockquote> <p>Json saya kelihatan seperti ini dalam lajur json_data: </p> <pre class="lang-json prettyprint-override"><code>{ "bla":"", "bla2":"", "bla3":"", "bla4":"", "respCode ":"123", "bla5":"" } </code></pre> <p>Saya juga mencuba ini</p> <p><kod>WHERE JSON_UNQUOTE(JSON_EXTRACT('json_data', "$.respCode")) = '123'</code></p>
P粉252116587
P粉252116587

membalas semua(1)
P粉617597173

Ini ialah sintaks fungsi MySQL JSON_CONTAINS():

JSON_CONTAINS(target_json, candidate_json)
JSON_CONTAINS(target_json, candidate_json, path)

Boleh cuba

SELECT * FROM `reports` 
WHERE JSON_CONTAINS(json_data, '{"respCode":"123"}');

Demo Fiddle DB

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan