我正在尝试执行这个:
SELECT * FROM `lms_test`
WHERE NOT EXISTS
(SELECT * FROM `lms_studenttest`
WHERE `lms_test`.slug = `lms_studenttest`.testId
AND `lms_studenttest`.`studentId`='10a75c804b8851520993dedc42334c0f'
)
AND `lms_test`.`testType`= 'Practice Test'
但没有得到成功。
帮我做这件事。
我想你可以试试这个例子:
A::whereNotExists(function($query){
$query->select(DB::raw(1))
->from('B')
->whereRaw('A.id = B.id');
})
->get();
或
DB::table('lms_test')
->whereNotExists(function ($query) {
$query->select('lms_studenttest.*')
->from('lms_studenttest')
->where('lms_test.testType', 'Practice Test')
->where('lms_studenttest.studentId', '10a75c804b8851520993dedc42334c0f')
->whereRaw('lms_studenttest.testId = lms_test.slug');
})
->get();
希望这对您有帮助!!
尝试:
DB::table('lms_test')
->whereNotExists(function ($query) {
$query->select(DB::raw(1))
->from('lms_studenttest')
->where('lms_test.testType', 'Practice Test')
->where('lms_studenttest.studentId', '10a75c804b8851520993dedc42334c0f')
->whereRaw('lms_studenttest.testId = lms_test.slug');
})
->where('testType','Practice Test')
->get();
试试这个(我不检查真实数据,我只写逻辑(:
SELECT *
FROM `lms_test`
LEFT OUTER JOIN `lms_studenttest`
ON `lms_test`.slug = lms_studenttest`.testId
WHERE `lms_studenttest`.testId IS NULL
AND `lms_studenttest`.`studentId`='10a75c804b8851520993dedc42334c0f'
AND `lms_test`.`testType`= 'Practice Test'
尝试以下条件查询,让我知道它是否有帮助:
if (User::where('email', '=', Input::get('email'))->exists()) {
// user found
}