[英]How to convert this MySQL query to a equivalent Laravel 5.4 Elequent/query builder query?
SELECT `id` FROM `jobs` WHERE `job_type` IN ( 'topemployercheckbox1','topemployercheckbox2') OR `job_category` IN ( 'Contract','Intern') ;
我需要将此MySQL查询转换为laravel 5.4查询生成器查询。
你可以做
ModelName::whereIn('job_type',['topemployercheckbox1','topemployercheckbox2'])
->orwhere(function($q){
$q->whereIn('job_category',['Contract','Intern'])
})->get('id');
要么
ModelName::whereIn('job_type',['topemployercheckbox1','topemployercheckbox2'])
->whereIn('job_category',['Contract','Intern'],'or')->get('id');
您可以使用两个whereIn查询的并集。
$query1= \DB::table("jobs")select("id")->whereIn("job_type",['topemployercheckbox1','topemployercheckbox2']);
$query2=\DB::table("jobs")select("id")->whereIn("job_category",['Contract','Intern']);
$job_ids= $query1->union($query2)->get();
您的查询将如下所示。 在这里,我们已经考虑到您的型号名称为Job。
Job::select('id')
->whereIn('job_type',['topemployercheckbox1','topemployercheckbox2'])
->orWhereIn('job_category',['Contract','Intern'])
->get();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.