Laravel中如何判断JSON值与参数不相等?
P粉250422045
P粉250422045 2023-08-26 23:37:58
[MySQL讨论组]

我想从数据库中获取那些不等于"My Msg"的记录。

我的数据库列中的JSON如下:

`{
   "msg": "My Msg",
   "resource_id": "Resourse"
 }`

我尝试了JSON_EXTRACTwhereJsonContains

但是没有运气,我使用的是Laravel 8与MySQL。

查询如下:

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

上述查询没有给我任何结果。

任何帮助将不胜感激。

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();
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号