我正在嘗試使用外部聯接進行查詢,並且過去我一直使用Oracle Pl/SQL,但現在正在嘗試學習MySQL。我試圖加入3個表格,USERS,USER_TYPE和GRADE。 USERS表包含列USER_TYPE_ID,它是USER_TYPE的外鍵,還包含列GRADE_ID,它是GRADE的外鍵。我需要外部連接,因爲用戶類型可能是學生,教師等,如果它是教員,那麼USER沒有等級,因此USER表中的NULL GRADE_ID。以下是我的查詢在過去使用(+)外連接的樣子。MySQL將Oracle Pl/SQL(+)轉換爲MySQL
SELECT A.USER_NAME
, A.USER_TYPE_ID
, B.USER_TYPE_DESC
, A.GRADE_ID
, C.GRADE_DESC
FROM USERS A
, USER_TYPE B
, GRADE C
WHERE A.USER_TYPE_ID = B.USER_TYPE_ID
AND A.GRADE_ID = C.GRADE_ID (+);
有人能幫我把這個翻譯成MySQL查詢嗎?
在此先感謝!
感謝您的輸入RC,但該查詢仍然只抓住有一個等級(學生)的用戶,並拋出了所有的教師和管理人員,因爲他們根本不在一個檔次,併爲此他們GRADE_ID是空值。我需要查詢來獲取所有用戶,即使他們沒有GRADE_ID。 – Ryan 2012-07-19 01:27:55
哦....對不起,我誤解了你的問題。對不起...我會更新 – 2012-07-19 02:02:09
非常感謝RC,工作就像一個魅力。這將是我繼續使用MySQL時未來參考的一個很好的例子。 – Ryan 2012-07-19 02:14:15