我的问题很简单,我是一名学生,我正在学习 Laravel,我不知道如何从子查询创建 where 条件。
这是查询
"SELECT id_parameter,value,code_rule,block,grouping,count FROM rule_definition WHERE (code_rule IN (SELECT code_rule FROM rule_definition WHERE id_parameter = 1 AND value = '$x') AND (id_parameter = 1 AND value = '$x')) OR (id_parameter != 1 AND value != '$x')";
我正在使用 laravel 6.0 查询生成器。
谢谢
最佳答案
我认为您不需要该子查询。因为它来自同一张表和相同的条件。
$query = DB::table('rule_definition')
->select('id_parameter, value, code_rule, block,grouping, count')
->where(function ($q) use ($x) {
$q->where('id_parameter','=',1)
->where('value','=',$x);
})->orWhere(function ($q) use ($x) {
$q->where('id_parameter','!=',1)
->where('value','!=',$x);
})
关于php - Laravel 查询生成器上的子查询 Where 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59659758/