Mysql
 sql >> Database >  >> RDS >> Mysql

Laravel Eloquent Ignora involucro

Usa whereRaw con associazione dei parametri per sanificare la tua dichiarazione whereRaw:

$term = strtolower($vars['language']);
Item::whereRaw('lower(language) like (?)',["%{$term}%"])->get();

Risposta precedente In alcune banche dati puoi usare l'operatore ilike nel tuo dove. Ad esempio

Item::where('language', 'ilike', $vars['language'])->get();

Tutti gli operatori disponibili sono:

protected $operators = array(
    '=', '<', '>', '<=', '>=', '<>', '!=',
    'like', 'not like', 'between', 'ilike',
    '&', '|', '^', '<<', '>>',
);

Modifica:ilike non fa distinzione tra maiuscole e minuscole like .