gpt4 book ai didi

php - Laravel Eloquent - 通过连接多列进行过滤

转载 作者:行者123 更新时间:2023-11-28 23:24:22 25 4
gpt4 key购买 nike

我是 Laravel 的新手,我在尝试执行以下操作时遇到了困难。我有一个包含以下列的简单用户表:

  • id
  • 名字
  • last_name

我要创建一个带有过滤选项的用户列表。其中一个过滤器是full_name,但我没有存储用户的full_name,我无法修改表结构。

几天后我得到了这个:

$query = \DB::table('users');
$query->select(\DB::raw('CONCAT_WS(" ", `last_name`, `first_name`)
as `full_name`, id'))->having('full_name', 'LIKE',$input['filter_name']);
$result = $query->get(['*']);

但它不起作用。

规范:我使用的是最新的 laravel。

最佳答案

我想你忘记了 LIKE 语句中的通配符。

代替这个

$query->select(\DB::raw('CONCAT_WS(" ", `last_name`, `first_name`) 
as `full_name`, id'))->having('full_name', 'LIKE',$input['filter_name']);

尝试:

$query->select(\DB::raw('CONCAT_WS(" ", `last_name`, `first_name`) 
as `full_name`, id'))->having('full_name', 'LIKE', '%' . $input['filter_name'] . '%');

关于php - Laravel Eloquent - 通过连接多列进行过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39972800/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com