雄辩的地方lower()喜欢PostgrSQL Laravel

时间:2018-08-22 14:51:53

标签: laravel postgresql laravel-5 eloquent laravel-5.5

我想借助Eloquent在Laravel的 PostgreSQL 中加快查询速度。

现在我有了这个

$word = 'Bertha'
$cows->where('name', 'ilike', '%' . $word . '%');

当我执行普通的like而不是ilike时,速度会更快。

所以我尝试了以下操作:

$cows->where('LOWER(name)', 'like', '%' . $word . '%');

$cows->whereRaw('LOWER(name) like %' . $word . '%');

$cows->whereRaw('LOWER(name) like %?%', [$word]);

全部失败,并显示错误。我在做什么错了?

1 个答案:

答案 0 :(得分:4)

您可以使用DB::raw()

$cows->where(\DB::raw('LOWER(name)'), 'like', '%' . $word . '%');