1. 程式人生 > >針對於多個inner join或者left join多條件查詢的時候,各個inner join 的指向問題

針對於多個inner join或者left join多條件查詢的時候,各個inner join 的指向問題

先看一段程式碼吧:

<span style="font-size:18px;">SELECT * FROM 
			GOODS1 FR 
			LEFT JOIN GOODS2 MH ON MH.RETURN_NO = FR.ACT_APPL_COLUMN_1 
			INNER JOIN GOODS3 ML ON MH.HEADER_ID = ML.HEADER_ID
			LEFT JOIN GOODS4 ss ON ss.lineId = MH.lineId 	</span>

第一個left join 只是針對 GOODS2 和GOODS1,而第二個inner join 是針對GOODS3 和GOODS3前面的所關聯查詢的結果,

第三個left join 針對的是GOODS4和GOODS4前面的所關聯查詢的結果,同理....

借用別人的一段寫法:

INNER JOIN 連線兩個資料表的用法:
SELECT * 
FROM 表1 INNER JOIN 表2 ON 表1.欄位號=表2.欄位號

INNER JOIN 連線三個資料表的用法:
SELECT * FROM (表1 INNER JOIN 表2 ON 表1.欄位號=表2.欄位號) INNER JOIN 表3 ON 表1.欄位號=表3.欄位號

INNER JOIN 連線四個資料表的用法:
SELECT * FROM ((表1 INNER JOIN 表2 ON 表1.欄位號=表2.欄位號) INNER JOIN 表3 ON 表1.欄位號=表3.欄位號) INNER JOIN 表4 ON Member.欄位號=表4.欄位號