【问题标题】:Laravel multiple orWhere with and clause EloquentLaravel 多个 orWhere 与 and 子句 Eloquent
【发布时间】:2020-08-03 02:53:44
【问题描述】:

我使用此代码在搜索查询中获取数据。但没有使用 done_undone 子句

                $members = DB::table('members')
                    ->where('name', 'like', '%' . $request->search . '%')
                    ->orWhere('contact_number', 'like', '%' . $request->search . '%')
                    ->orWhere('nid_number', 'like', '%' . $request->search . '%')
                    ->orWhere('nid_number', 'like', '%' . $request->search . '%')
                    ->where('done_undone', '=', 'undone')
                    ->orderBy('id', 'DESC')
                    ->paginate(20);

【问题讨论】:

  • 嗨,你有没有试过这样写where$members = DB::table('members')->where([['name', 'like', '%' . $request->search . '%'], ['done_undone', '=', 'undone']])?希望对您有所帮助。
  • 谢谢兄弟。让我检查一下。
  • 另外,你有两条'nid_number' 行。认为这是一个错误。
  • 谢谢。它工作....
  • 是的,我明白了。谢谢

标签: php sql laravel eloquent


【解决方案1】:

您的代码中有一个小错误,其中语句的顺序是您的代码中存在重复的语句。试试下面的代码:

$members = DB::table('members')
                    ->where('name', 'like', '%' . $request->search . '%')
                    ->where('done_undone', '=', 'undone')
                    ->orWhere('contact_number', 'like', '%' . $request->search . '%')
                    ->orWhere('nid_number', 'like', '%' . $request->search . '%')
                    ->orderBy('id', 'DESC')
                    ->paginate(20);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-01-01
    • 2015-02-22
    • 1970-01-01
    • 1970-01-01
    • 2019-06-15
    • 1970-01-01
    • 2021-10-11
    • 2020-11-21
    相关资源
    最近更新 更多