2015-05-04 48 views
-4

我有兩個表,一個包含學生id和couse。第二個包含couses,日期和時間。現在我想得有病程上第二個表顯示具有相同的日期和時間我有兩個表格,一個包含學生id和couse。第二個包含couses,日期和時間

表1

Student ID Cousecode
student 1 Couse A student 1 Couse B student 1 Couse C student 1 Couse D student 1 Couse E student 1 Couse F student 1 Couse G student 2 Couse A student 2 Couse B student 2 Couse C student 2 Couse D student 2 Couse E
student 2 Couse F

表2

`Cousecode  date   time 
Couse A  2015-05-04 Mor 

學生的數量` 所以我想運行一個查詢,它將循環遍歷表1和表2來計算正在註冊的學生數量職高因爲課程實驗出現在表2

我已經運行此查詢 SELECT table1.student_id, table1.CourseCode,table2.* FROM table1 RIGHT JOIN table2 ON table1.CourseCode = table2.cousecode WHERE table1.CourseCode = 'Couse B' AND table2.date='2015-05-04' AND table2.time='Mor'; 但不工作

+0

你想要一個課程的學生人數?或者是其他東西 ... – aphextwix

回答

0

所以,只是做一些事情說清楚。課程與學生之間的關係是MTM(多對多),因此您需要第三個表(關聯實體),其中只包括學生表的pk和課程表的pk。它們都必須是第三個表中的主鍵(當然還有外鍵)。當你這樣做時,你想要統計特定課程中的學生數量

SELECT COUNT(studentID) AS Students_in_course FROM your_table 
WHERE courseID=2; 
相關問題