[英]Sql Junction Table in java
我想要使用多對多的關系。 如何在sql中與學生一起學習科目和科目。
學生桌有
student_IDno | full name | address |
和主題表有
subject_IDno| title | description | time |
我想將學生ID號分配給主題表,以便主題表可以有學生
我可以在主題表中做同樣的事情嗎? 將主題ID號分配給學生表,以便它也可以有一個主題?
如果我搜索主題代碼,學生將出現,反之亦然,如果我搜索學生代碼科目也會出現。
什么是最好的方法呢? 我希望我能幫助解釋我的問題。
您引入了一個THIRD表來建立表STUDENT和SUBJECT之間的關系。 讓我們稱之為CLASS 。 它將包含以下列:
classID | student_IDno | subject_IDno
讓我們說一名學生就讀於該校。 將使用唯一的student_IDno將條目插入到STUDENT。 (讓我們說1)
主題列表當然位於SUBJECT表中。
現在,如果學生想要注冊一個主題,他將必須加入CLASS。 現在,您將他插入到student_IDno = 1且subject_IDno =他注冊的任何科目的班級中。
您的CLASS表將如下所示:
classID | student_IDno | subject_IDno
1 | 1 | 1
2 | 1 | 2
3 | 1 | 3
你能看到它如何顯示學生1的CLASS數量嗎?
你是如何進行搜索的? 讓我們說你想找到正在服用SUBJECT 1的學生。
SELECT student.* FROM CLASS as class
JOIN SUBJECT as subject ON class.subject_IDno = subject.subject_IDno
JOIN STUDENT as student ON class.student_IDno = student.student_IDno
WHERE subject.subject_IDno = 1
我把剩下的留給你了。 我想你應該已經明白了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.