我正在使用Laravel 4.1。
我正在尝试从表中获取记录列表,其中userid在用户表中不存在为id。
我正在尝试使用子选择创建查询。主查询和子选择都需要使用非默认连接。
我试过了:
DB::connection('database')
->table('table')
->whereNotIn('userid', function($query)
{
$query->select('id')
->from('user');
})->get();
当我打印出sql并在MySQL工作台中运行它时,我得到了预期的结果。 但我觉得子选择是在默认连接而不是我试图使用的连接上完成的。
请帮忙。
答案 0 :(得分:0)
我做了一个测试,似乎工作正常。如果您的查询还$query->select('id')->from('user');
将在database
连接上运行。
您可以自行测试。在from('user')
中,您应该为默认连接存在表的名称,并且在database
连接中不存在。如果子查询将使用默认连接应用程序不应该抛出任何异常,但事实上它确实是因为database
连接中不存在此表