2016-01-26 36 views
0

我有2個表。 1st包含所有學生的ID,fname和lastname的列表。第二名有他們的身份證,日期和出勤率。查詢獲取的值不存在於一個表中,而從另一個表中進行比較

我可以使用哪個查詢來比較從第2個表格到第1個表格的日期和ID,以便從所有學生列表中查看那些在特定日期缺席的學生。

我想過使用外連接,但並不確定如何工作。任何建議?

+1

添加一些示例數據。 – Wanderer

+0

t1左連接t2 ...其中t2.c爲空... – jarlh

+1

第二張表格包含所有學生在特定日期的記錄或只是在場的學生的記錄?如果後來,那麼出席專欄的意義是什麼?沒有任何樣本數據,我們只能假設。 – Utsav

回答

0
SELECT * 
FROM students 
LEFT JOIN attendances ON students.id=attendances.student_id 
WHERE attendances.attendance = true AND attendances.date='neededDate'; 

我想你的兩張桌子是學生和出勤率,出勤率表的student_id是外鍵,出勤率是布爾值。希望對你有效。

0

下面的查詢已寫入以下assumpations 列出勤包含NULL值,如果學生不存在和其他價值,如果他/她是目前

SELECT 
a.id, 
concat(a.fname||' '||a.lname) As Full_Name, 
b.date, 
case when b.attendance is Null 'Absent' else 'Present' End as Attendance_Status 
FROM students a 
LEFT JOIN attendances b ON students.id=b.student_id 
b.date='&RequiedDate'; 

所需的日期將被視爲一個來自用戶的輸入參數

相關問題