You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel中如何将多个where条件合并为单个where条件?

如何将多个WHERE条件合并到同一个Laravel Query Builder的WHERE子句中?

当然可以!Laravel的Query Builder支持把多个AND条件打包进同一个where方法里,用二维数组的形式传递就行,这样代码会更紧凑,可读性也不差。

你原来的代码:

DB::table('books')->where('user_id',$uID)->where('author',$author_name)->delete();

可以重构为:

DB::table('books')->where([
    ['user_id', '=', $uID],
    ['author', '=', $author_name]
])->delete();

小说明:

  • 这种数组格式的where条件,默认就是用AND逻辑关联的,和你连续调用两次where的效果完全一致,都会筛选出同时满足user_id = $uID和author = $author_name的记录再执行删除。
  • 要是你后续需要调整条件逻辑,比如加入OR判断,也可以在数组里灵活搭配orWhere,不过针对你当前的需求,上面的数组写法就完美适配了。
  • 这种写法不止能用在delete上,select、update等其他Query Builder操作都支持,很实用!

内容的提问来源于stack exchange,提问作者Sai Tarun

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.01 01:57:35