簡體   English   中英

java中的Sql Junction表

[英]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

我把剩下的留給你了。 我想你應該已經明白了。

更多關於SQL加入的信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM