如何为名为“国家/国家/地区”的模型/表编写Laravel雄辩查询,如果我从任何变量中搜索并根据得出结果,查询将从3个不同的列中进行搜索,就像给定图像中的SQL一样。
如何在Laravel 5.6 /5.7的Laravel中编写类似的查询
答案 0 :(得分:2)
您正在寻找的是laravel Query Builder中的where()
和orWhere()
函数
$countries = Country::where('name', 'like', '%af%')
->orWhere('alpha-2', 'like', '%af%)
->orWhere('alpha-3', 'like', '%af%')
->get();
,如果您想将值动态传递给where()
函数。
$value = 'af';
$countries = Country::where('name', 'like', "%$value%")
->orWhere('alpha-2', 'like', "%$value%")
->orWhere('alpha-3', 'like', "%$value%")
->get();
在变量传递中注意“双引号”。
答案 1 :(得分:1)
像这样使用模型查询
Model::where(function($query)
{
$query->where('column1', 'like', 'keyword');
$query->orWhere('column2', 'like', 'keyword');
$query->orWhere('column3', 'like', 'keyword');
})->get();