รายละเอียดของการตอบ ::
ตามความเห็นของผม เก็บแค่ 2 ตารางก็พอครับ 1. ตารางนักเรียน 2. ตารางการสแกนเข้าเรียน
วิธีการ
1. ในโปรแกรมก็เก็บแต่ข้อมูลของนักศึกษาที่มาคีย์ลงเวลาเข้าเรียนครับ
2. ถ้าเราแค่ต้องการอยากรู้ว่า นักเรียน ที่ไม่มาคีย์ลงเวลาในวันนั้นมีใครบ้าง เราก็ทำคิวรี่เอาครับ
ยกตัวอย่าง
เช่นในตาราง tbl_time เวลานักศึกษาคีย์ลงเวลา ก็ต้องเก็บฟิล วันที่-เวลา / รหัสนักศึกษา (FK) เป็นต้น
และถ้าอยากรู้ว่าใครไม่มาลงเวลาในวันนั้นบ้างก็แค่
Code (SQL)
SELECT tbl_people.StudentID FROM tbl_people
WHERE tbl_people.StudentID NOT IN ( SELECT tbl_time.[Student_ID] FROM tbl_time
WHERE tbl_time.[DateCheckIn] = '3/12/2556' )