当前位置: 首页 > 知识库问答 >
问题:

laravel中where和orWhere的区别

班高明
2023-03-14
$user_query = User::select( 'users.id', 'users.username','users.first_name','users.last_name', 'users.photo' )
                    ->where('users.status',1)
                    ->where('users.id','!=',$id)
                    ->where('users.username','like','%'.$searchkey.'%')
                    ->orWhere('users.first_name','like','%'.$searchkey.'%')
                    ->orwhere('users.last_name','like','%'.$searchkey.'%')->get();

                    // ->whereOr('users.first_name','like','%'.$searchkey.'%')
                    // ->whereOr('users.last_name','like','%'.$searchkey.'%')->get();

共有1个答案

姜卜霸
2023-03-14

他们都可以这样做。但不是真的,因为您使用的whereor是错误的。whereor动态where。在这篇博客文章中对它们进行了更深入的描述

对于dynamic wheres,条件不仅由参数定义,而且由方法名称本身定义。这里有一个例子:

->whereAge(18);

它可以被翻译成

->where('age', '=', 18);
->whereAgeOrGender(18, 'male');
 类似资料:
  • 问题内容: 我有以下代码: 除了和以外,一切都正常。 它不排除任何一个,并且显示的金额高于和低于我设置的数字。如果我删除它工作正常。 我使用的和正确的? 问题答案: 问题是您没有将OR和AND组合在一起,而是对其进行了正确分组。考虑以下条件: 因此,要使其正常工作,您需要对条件进行正确分组。您可以通过将闭包传递给或方法来对条件进行分组。我猜您想将条件分组在一起,因此您的代码如下所示:

  • 我有一个搜索功能在我的应用程序,将搜索一个“广泛的”搜索词的几个列或一个定义的列作为用户选择。我还有一个outser语句,用于搜索公司id(多租户应用程序)和分配的subcompany_id,它们都属于用户。 当我搜索时,我得到了所有的结果,它没有使用与用户相关的company_id或subcompany_id。我发现它在语句括号内使用subcompany_id,而不是在括号外。 此代码返回以下查

  • 本文向大家介绍SQL中where和having的区别详解,包括了SQL中where和having的区别详解的使用技巧和注意事项,需要的朋友参考一下 概念 where where是一个约束声明,在查询数据库的结果返回之前对数据库中的查询条件进行约束,再返回结果前起作用,并且where后不能使用“聚合函数”。 聚合函数 对一组值执行计算,并返回单个值,也被称为组函数,经常与 SELECT 语句的 GR

  • 问题内容: 是什么区别,并在声明中? 编辑:我已将史蒂文的答案标记为正确的答案,因为它包含链接上信息的关键部分: 不使用when时,其行为类似于子句 我所见过的情况并没有发生,而这正是我开始困惑的地方。当然,除非您知道这一点,否则无法在问题中指定它。 问题答案: HAVING为SELECT语句中使用的组或聚合函数指定搜索条件。

  • 问题内容: 以下两个命令有什么区别? 和 哪一个更快?如果是另一种类型,会有所不同吗? 问题答案: 它们在语义上是相同的。 只是第二个示例中一串相等语句的简写形式。性能也应该相同。 类型无关紧要,它将始终计算为一串相等的字符串。 但是,使用和数据可能有所不同,a的比较结果不会为false ,因此您可能会得到结果集中未曾期望的行。 举个例子: 上面的查询将不会返回一行,即使在面值既不或者-这是因为是

  • 在Laravel4中,我已经建立了一个搜索表单。任何人可以提交