簡體   English   中英

MySQL如何獲取查詢以顯示沒有客戶參加的研討會

[英]MySQL How to Get Query To Display Seminars With No Customers Attending

我是SQL的新手,正嘗試在MySQL中為已創建的數據庫編寫查詢。 該查詢旨在顯示所主持的每個研討會以及參加該研討會的每個客戶的信息。 該查詢還用於顯示沒有人參加的研討會。 我將如何做到這一點? 感謝您提前提供的幫助。

SELECT sem.SeminarID, sem.SeminarDate, sem.Location, sem.SeminarTitle, cust.CustomerID, cust.LastName, cust.FirstName
FROM seminar AS sem JOIN 
     seminar_customer as SC on sem.SeminarID = SC.SeminarID JOIN
     customer AS cust on SC.CustomerID = cust.CustomerID        
ORDER BY SeminarID;

您需要一個“外部聯接”,以允許返回研討會表的某些行,而該行在workshop_customer表中沒有匹配的行。

按照您的查詢布局方式,“ courses_customer”位於“左側”,因此請使用“ LEFT OUTER JOIN”

SELECT sem.SeminarID, sem.SeminarDate, sem.Location, sem.SeminarTitle, cust.CustomerID, cust.LastName, cust.FirstName
FROM seminar AS sem  LEFT OUTER JOIN seminar_customer as SC on sem.SeminarID = SC.SeminarID 
                     LEFT OUTER JOIN customer AS cust on SC.CustomerID = cust.CustomerID        
ORDER BY SeminarID;

請參閱: SQL連接的直觀說明

您可以在那些聯接中省略“ OUTER”一詞,因此通常您只會看到“ LEFT JOIN”,但是它們是相同的

暫無
暫無

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

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