SQL - 选择它是否包含字符串

时间:2016-06-04 13:57:50

标签: php sql laravel-5.2

我正在尝试进行一个SQL查询,该查询选择名称为 searchTerm的所有卡车

 $foodtrucks= DB::table('foodtrucks')
        ->rightjoin('users', 'foodtrucks.user_id', '=', 'users.id')
        ->orderBy('users.premium_type','premium')
        ->select('foodtrucks.*')
        ->where('name', 'LIKE', $searchTerm)
        ->orWhere('info', 'LIKE', $searchTerm)
        ->get();

如果我写了确切名称,我目前正在得到结果,但这不是我想要发生的事情,我希望它显示结果,即使名称包含searchTerm

例如

  • 我搜索“卡车”

  • 我得到Truck123,Truck456和Truck789

现在发生了什么

  • 我搜索“卡车”

  • 我没有结果

  • 我搜索Truck123

  • 我得到Truck123

1 个答案:

答案 0 :(得分:1)

所以你正在搜索LIKE %Truck%。寻找:

$foodtrucks= DB::table('foodtrucks')
        ->rightjoin('users', 'foodtrucks.user_id', '=', 'users.id')
        ->orderBy('users.premium_type','premium')
        ->select('foodtrucks.*')
        ->where('name', 'LIKE', "%$searchTerm%")
        ->orWhere('info', 'LIKE', "%$searchTerm%")
        ->get();