2017-11-05 3 views
0

Ich habe eine Abfrage:Laravel DB Fassade wie LIKE auszudrücken

DB::select('select * from student where name like "%?%" or description like "%?%"',[$keyword,$keyword]) 

aber ich habe leer Ergebnis, das nicht sein sollte. Ich denke, es könnte dauern "?" anstelle meines Keywords, wie soll ich es ändern?

Antwort

2

Sie könnten diese Aussage so verwenden.

DB::table('students')->where('name','LIKE',"%$keyword%")->orWhere('description','LIKE',"%$keyword%")->get(); 
1

Sie können es auf diese Weise auch tun:

$result = DB::table('students')->where(function ($query) use ($keyword) { 
    $query->orWhere('name', 'like', "%".$keyword."%"); 
    $query->orWhere('description', 'like', "%".$keyword."%"); 
})->get();