2
假設我們有一個EMPLOYEE
和一個DEPENDENT
表。每個員工都有一個標識符Ssn,可能還有一個標識符爲Essn的從屬人員。以下兩個查詢是否相同?左連接可以表示爲右連接,反之亦然?
SELECT DISTINCT E.Lname, D.Dependent_name
FROM ((EMPLOYEE E) LEFT OUTER JOIN (DEPENDENT D) ON E.Fname=D.Dependent_name);
SELECT DISTINCT E.Lname, D.Dependent_name
FROM ((DEPENDENT D) RIGHT OUTER JOIN (EMPLOYEE E) ON E.Fname=D.Dependent_name);
一般情況下,是不是真的
(TABLE A) LEFT OUTER JOIN (TABLE B)
相同
(TABLE B) RIGHT OUTER JOIN (TABLE A)
?
如果你反轉表,你可以使用左連接例如。 tableA右連接表B與tableB左連接表A相同A – scaisEdge
是的,這就是應該如何工作的。我注意到使用第一種形式(LEFT JOIN)更爲常見,但我認爲這是因爲開始先寫需要的數據然後再寫可選的數據會更自然。 – Insac