protected getSearchQuery ( |
||
$query | ||
$column | string | |
$relevance | string | |
$words | array | |
$relevance_multiplier | float | |
$pre_word | string | |
$post_word | string | |
return | string |
protected function getSearchQuery(Builder $query, $column, $relevance, array $words, $relevance_multiplier, $pre_word = '', $post_word = '')
{
$like_comparator = $this->getDatabaseDriver() == 'pgsql' ? 'ILIKE' : 'LIKE';
$cases = [];
foreach ($words as $word) {
$cases[] = $this->getCaseCompare($column, $like_comparator, $relevance * $relevance_multiplier);
$this->search_bindings[] = $pre_word . $word . $post_word;
}
return implode(' + ', $cases);
}