laravel:如何在Eloquent Query中使用LOWERCASE函数?

时间:2017-09-15 11:41:02

标签: laravel

我想实现不区分大小写的搜索 以下是我的搜索代码

/*get the title to search*/
$newsTitle=Input::get('srach_newsTitle')?Input::get('srach_newsTitle'):'';
$query = DB::table('news');
if( strlen($newsTitle) )
    {
        $query->whereRaw('LOWERCASE(`newsTitle`) LIKE ? ',[trim(strtolower($newsTitle)).'%']);
    }

但它的功能LOWERCASE未定义在我的项目中,以下是错误消息

Connection.php第729行中的QueryException: SQLSTATE [42000]:语法错误或访问冲突:1305 FUNCTION cpr-laravel.LOWERCASE不存在(SQL:选择count(*)作为news的聚合,其中LOWERCASE(newsTitle)LIKE test%)

我做错了什么?plz help

1 个答案:

答案 0 :(得分:11)

使用LOWER()

$query->whereRaw('LOWER(`newsTitle`) LIKE ? ',[trim(strtolower($newsTitle)).'%']);