如何使用laravel查询构建器嵌套WHERE加AND条件?

PlayHardGoPro

我需要这样的东西:

public function myFunc(Request $request) {
    $search = $request->input('searchString');
    $myOjb = myModel::where('field1', 'like', '%' .$search . '%')
                    ->orwhere('field2', 'like', '%' .$search . '%')
                    ->orwhere('field3', 'like', '%' .$search . '%')
                    ->orwhere('field4', 'like', '%' .$search . '%')
                    ->where('field5','yes')

}

我需要将数据带到其中任何一个like是真的并且字段field5 = yes是必须的。

问题是:即使field5没有找到它也会给我带来数据
如何正确过滤?

没看懂:进阶Wheres

山峰

您可以通过在 where() 上传递闭包来执行以下操作

myModel::where('field5', 'YES')->where(function ($q) use($search) {
                                                     ^^^
    return $q->where('field1', 'like', '%' .$search . '%')
              ->orwhere('field2', 'like', '%' .$search . '%')
              ->orwhere('field3', 'like', '%' .$search . '%')
              ->orwhere('field4', 'like', '%' .$search . '%');
});

编辑您需要使用 use

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我如何在Laravel中查询构建Where IF条件

使用Laravel查询构建器构建查询

如何在'where'子句的laravel查询构建器中使用括号?

在Laravel查询构建器中使用多个where子句

在Laravel雄辩的查询构建器中使用whereIn和where

如何在查询构建器中使用条件

在 Laravel 中如何使用查询构建器来实现这一点?(子查询 WHERE NOT IN)

如何使用Laravel的“查询”构建器还原软删除的记录?

如何使用Where条件随着加入查询在Laravel

如何在yii2查询构建器中基于if子查询在where条件中编写if条件

Laravel Eloquent - 使用关系构建“where not”查询

Laravel:针对不同条件的查询构建器基础查询

Laravel查询构建器-修改了where语句的重用查询

Laravel:如何在Laravel查询构建器中使用派生表/子查询

使用 Eloquent 的 Laravel 查询构建器

Laravel查询构建器在使用orWhere条件时无法按预期工作

如何在Laravel查询构建器中添加和排除where()子句

如何使用条件集合构建SELECT * WHERE

如何在Laravel的查询构建器的join子句中使用子查询?

如何使用Laravel查询构建器合并来自同一表的两个查询

Laravel查询构建器的“ where”方法已损坏

Laravel 查询构建器调用成员函数 where() on null

Laravel mysql 查询具有唯一约束条件的多个插入(使用查询构建器)

如何使用构建器模式构建嵌套列表?

在雄辩的模型中使用条件where子句构建查询

使用多个where条件构建动态mysql查询

如何在 Laravel 查询构建器中编写子查询

如何使用Laravel构建MySQL查询

在Doctrine查询构建器中的嵌套查询