作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想用 ORM 做一个查询,并在里面一起使用 (AND) 和 (OR)我的代码是:
$users = \App\User::where('type',1)->orWhere('type',2)->orWhere('type',3)->where('name',$name)->where('family',$family)->get();
这是错误的
我的代码应该加入
$users = \App\User::where('type',1)->orWhere('type',2)->orWhere('type',3)->get();
与
$users = \App\User::where('name',$name)->where('family',$family)->get()
如何编写真正的查询?
最佳答案
如果情况与同一字段有关,那么您需要使用 whereIn
正如@Tharaka Dilshan 所提到的。
如果情况比这更复杂,您可能需要使用分组查询:
$users = \App\User::where(function ($query) {
$query->where('type', 1)->orWhere('type', 2)->orWhere('type', 3);
})
->where('name', $name)
->where('family', $family)
->get();
有关Parameter Grouping.的更多详细信息
关于php - 使用 ORM 进行查询并在内部一起使用 (AND) 和 (OR),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52687544/
我是一名优秀的程序员,十分优秀!