[英]In MySQL, need to join two tables with one table having multiple references to the second
我有兩個表,一個是注冊表,表中包含兩個字段,firstchoice和secondchoice。 另一個是時間表,其中包含開始日期和結束日期以及一個學期。 注冊表中的firstchoice和secondchoice都引用了計划表中的semesterid。 我正在嘗試創建一個頁面,該頁面顯示所有注冊人員及其注冊的時間表(開始日期和結束日期)以及我當前的查詢:
$query = "SELECT * FROM signups INNER JOIN (schedule) ON signups.firstchoice=schedule.semesterid AND signups.secondchoice=schedule.semesterid";
沒有從計划表返回任何結果。 是否可以這樣連接兩個表,一個表上的兩列引用另一表上的一列?
我認為您正在尋找:
SELECT *
FROM signups s
INNER JOIN schedule sc1 ON s.firstchoice=sc1.semesterid
INNER JOIN schedule sc2 ON s.secondchoice=sc2.semesterid
如果他們並不總是有第二選擇,那么您可能需要這樣做:
SELECT *
FROM signups s
INNER JOIN schedule sc1 ON s.firstchoice=sc1.semesterid
LEFT OUTER JOIN schedule sc2 ON s.secondchoice=sc2.semesterid
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.