子查询Laravel查询构建器上的where条件

时间:2020-01-09 08:22:26

标签: php mysql laravel

我的问题很简单,我是学生,正在学习laravel,我不知道如何从子查询中创建where条件。

这是查询

    <profile>
        <id>customer2</id>
        <dependencies>
             <dependency>
                <groupId>myGroup</groupId>
                <artifactId>artificatCustomer2</artifactId>
            </dependency>        


    <profile>
        <id>customer1</id>
        <dependencies>
             <dependency>
                <groupId>myGroup</groupId>
                <artifactId>artificatCustomer1</artifactId>
            </dependency>        

我正在使用laravel 6.0查询生成器。

谢谢

2 个答案:

答案 0 :(得分:1)

我认为您不需要该子查询。因为它来自相同的表和相同的条件。

$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);
         })

答案 1 :(得分:0)

$query = DB::table('rule_definition')->where(function ($q){ 
             $q->where('id_parameter','=',1)
               ->where('value','=','$x');
         })->orWhere(function ($q){ 
             $q->where('id_parameter','!=',1)
               ->where('value','!=','$x');
         })->select('id_parameter, value, code_rule, block,grouping, count')
相关问题