Laravel中如何判斷JSON值與參數不相等?
P粉250422045
P粉250422045 2023-08-26 23:37:58
0
1
639
<p>我想從資料庫中取得那些不等於"My Msg"的記錄。 </p> <p>我的資料庫列中的JSON如下:</p> <pre class="brush:php;toolbar:false;">`{ "msg": "My Msg", "resource_id": "Resourse" }`</pre> <p>我試了<code>JSON_EXTRACT</code>和<code>whereJsonContains</code></p> <p>但沒有運氣,我用的是Laravel 8與MySQL。 </p> <p>查詢如下:</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>上述查詢並沒有給我任何結果。 </p> <p>任何幫助將不勝感激。 </p>
P粉250422045
P粉250422045

全部回覆(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();
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板