1
加入我有下面的查詢問題:查詢左外的SQL
select main.courseid
,main.coursename
,main.catid
,main.catname
,main.need_dte
from (
select t1.courseid
,t1.coursename
,t2.catid
,t2
,catname
,t2.need_dte
from t1
,t2
where t1.courseid = t2.courseid
and t1.coursename = t2.coursename
) main
left outer join (
select courseid
,coursename
,need_dte training_info
) ui on main.courseid = ui.courseid
and main.coursename = ui.coursename
and main.need_dte = ui.need_dte
我在我試圖做左外出現上述情況的表之間的連接「主」和「training_info 」。
主表:t1和t2之間的內部連接以獲得培訓和類別詳細信息。
training_info(ui):有沒有類別細節的培訓細節。
這裏我有幾個課程的細節在「主要」和「用戶界面」共同表。我在「主」表中沒有「ui」表中的獨特課程記錄。所以我試圖提取獨特和常見的記錄。
我能夠得到這個連接的結果,但問題是與need_dte。在兩個表中都存在need_dte字段。如果記錄來自「主」表,則可以從內部表t2中更新need_dte字段。如果記錄來自結果中的「ui」表,則need_dte未被填充。
是否有任何方式使用此連接設置我需要從training_info表中獲取result_start記錄的need_dte,如果這些記錄有need_dte。
謝謝!
要麼這樣,要麼OP可能只需要兩列,一個像'main_need_dte'和另一個'training_need_dte'。 (在某些行中可能是'null' - 也許這是行。) – mathguy
謝謝coalesce函數工作:) – user3262279