Wie kann festgestellt werden, ob JSON-Wert und Parameter in Laravel nicht gleich sind?
P粉250422045
P粉250422045 2023-08-26 23:37:58
0
1
640
<p>Ich möchte die Datensätze aus der Datenbank abrufen, die nicht mit „Meine Nachricht“ übereinstimmen. </p> <p>Der JSON in meiner Datenbankspalte lautet wie folgt:</p> <pre class="brush:php;toolbar:false;">`{ "msg": "Meine Nachricht", "resource_id": "Ressource" }`</pre> <p>Ich habe <code>JSON_EXTRACT</code> und <code>whereJsonContains</code></p> <p>Aber kein Glück, ich verwende Laravel 8 mit MySQL. </p> <p>Die Abfrage lautet wie folgt:</p> <pre class="lang-php Prettyprint-override"><code>$records = DB::table('atble')->select('res_id', 'msg_string')->where('res_id', $param)->whereJsonContains('ret_string->msg', ['elem1','elem2'...])->latest()->first(); </code></pre> <p>Die obige Abfrage ergab keine Ergebnisse. </p> <p>Jede Hilfe wäre sehr dankbar. </p>
P粉250422045
P粉250422045

Antworte allen(1)
P粉256487077

你必须尝试这个

$records = DB::table('atble')->select('res_id',
'msg_string')->where('res_id',
$param)->whereJsonContains('ret_string->msg', ['object_key' => 'object_value'])->latest()->first();

还要遵循WhereJsonContains的正确指南

还可以参考此链接获取更多帮助

这是一个示例,它会帮助你。

$array = [0 => 1, 1 => 2, 2 => 3];

// Eloquent
PaymentTransaction::whereJsonContains('payload->ProductCode- >id',$array)->get();
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage