gpt4 book ai didi

php - Laravel 模型使用或在 where 条件下?

转载 作者:行者123 更新时间:2023-12-01 12:16:34 24 4
gpt4 key购买 nike

我想从我的数据库中的 user_webhook 表中获取模板。在 WHERE 条件下,我正在检查 user_id、app_id 以及 user_webhook 表中的 notify_admin 或 notify_customer 值是否为 1。我正在使用查询..

$templates= $this->where('notify_admin',1)
->orwhere('notify_customer',1)
->where('user_webhooks.user_id',$user_id)
->where('user_webhooks.app_id',$app_id)
->select( 'webhooks.id as webhook_id','webhooks.app_id','webhooks.topic','webhooks.type','webhooks.action',
'webhooks.sms_template','user_webhooks.id','user_webhooks.notify_admin',
'user_webhooks.notify_customer','user_webhooks.user_id','user_webhooks.sms_template_status',
'user_webhooks.sms_template as sms'
)
->join ('webhooks',function($join){
$join>on('webhooks.id','=','user_webhooks.webhook_id');
})
->get()
->toArray();

当我使用 DB::getQueryLog() 查询时,我发现查询看起来像
select `telhok_webhooks`.`id` as `webhook_id`, `telhok_webhooks`.`app_id`,
`telhok_webhooks`.`topic`, `telhok_webhooks`.`type`, `telhok_webhooks`.`action`,
`telhok_webhooks`.`sms_template`, `telhok_user_webhooks`.`id`,
`telhok_user_webhooks`.`notify_admin`, `telhok_user_webhooks`.`notify_customer`,
`telhok_user_webhooks`.`user_id`, `telhok_user_webhooks`.`sms_template_status`,
`telhok_user_webhooks`.`sms_template` as `sms` from `telhok_user_webhooks`

inner join
`telhok_webhooks` on `telhok_webhooks`.`id` = `telhok_user_webhooks`.`webhook_id`

where `notify_admin` = ? or `notify_customer` = ? and `telhok_user_webhooks`.`user_id`
= ? and `telhok_user_webhooks`.`app_id` = ?

查询结果给出所有 app_id 和 user_id 的结果。
所以请告诉我在 where 条件下使用 OR。
提前致谢。

最佳答案

您可以将 where 约束链接在一起以及向查询添加 or 子句。 orWhere 方法接受与 where 方法相同的参数:

$users = DB::table('users')
->where('votes', '>', 100)
->orWhere('name', 'John')
->get();

高级用法:
Usere::where('id', 46)
->where('id', 2)
->where(function($q) {
$q->where('Cab', 2)
->orWhere('Cab', 4);
})
->get();

whereIn 方法验证给定列的值是否包含在给定数组中:
$users = DB::table('users')
->whereIn('id', [1, 2, 3])
->get();

更多: https://laravel.com/docs/5.5/queries

关于php - Laravel 模型使用或在 where 条件下?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47671580/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com