Db::table() IN

浏览:4713 发布日期:2016/11/22
5.0.0 - 严重 - 已处理
$data = [];
$rs = Db::table('station_news')
                ->where('time','>',12313112)
                ->where(function($query)use($data){$query
                    ->where(function($query)use($data){$query
                        ->where('send_id',888888)
                        ->where(function($query)use($data){$query
                            ->where('rec_id',123456)
                            ->whereOr(function($query)use($data){$query
                                ->where('rec_id','in',[1,2])
                                ->where('type',2);
                            });
                        });
                    })
                    ->whereOr(function($query)use($data){$query
                        ->where('send_id',123456)
                        ->where(function($query)use($data){$query
                            ->where('rec_id',888888)
                            ->whereOr(function($query)use($data){$query
                                ->where('rec_id','in',[3,4])
                                ->where('type',2);
                            });
                        });
                    });
                })
                ->order('time desc')
                ->select(false);
输出SQL变成了这样:
SELECT * FROM `station_news` WHERE  `time` > 12313112  AND (  (  `send_id` = 888888  AND (  `rec_id` = 123456 OR (  `rec_id` IN (3,4)  AND `type` = 2 ) ) ) OR (  `send_id` = 123456  AND (  `rec_id` = 888888 OR (  `rec_id` IN (3,4) AND `type` = 2 ) ) ) ) ORDER BY time desc
评论()
后面还有条评论,点击查看>>