【发布时间】:2017-07-11 09:45:14
【问题描述】:
我想在条件和子查询中的条件中编写子查询,检查父查询字段。
如下,
$query = DB::table('users');
$query->whereNotIn('users.id', function($query) use ($request) {
$query->select('award_user.user_id')
->from('award_user')
->where('award_user.user_id', 'users.id')
->where('award_user.award_id', $request->award_id);
});
查询工作正常,但是
->where('award_user.user_id', 'users.id')
这一行,users.id 不是从父查询中获取的。如果我手动输入数字,那么它工作正常。
我的查询有什么问题..你能建议一下吗?
【问题讨论】:
-
奖励ID没有问题,但users.id有问题
-
您应该尝试通过添加
->toSql()来获取sql 格式的查询,然后在phpMyadmin 或Mysql 查询浏览器中手动运行!
标签: php mysql laravel subquery