我對SQL比較陌生,所以請溫和!我有一個表格按月保存特定結構元素的狀態列表。這隻保存狀態已被改變(例如同意)的記錄,所以我缺少什麼時候根本沒有開始的信息(由於表中沒有任何操作,所以不存在於表中)。基本上我想加入到另一個包含日期的表中,這樣如果沒有記錄,它會填充空白狀態。用空白填充連接表SQL
例如表A持有的狀態
Cycle ID .... Status
69082 ............2
80412 ............3
表B持有的日期
Cycle ID..... Date
69082 ..........October 2013
75520 ..........November 2013
80045 ..........December 2013
80412 ..........January 2014
所以輸出我想會是這樣的(所以從表B的一切記錄,在表A中不存在的空白狀態):
Cycle ID .... Date .... Status
69082 ........Oct 13.....2
75520 ........Nov13.....' '
80045 ........Dec13 ....' '
80412 ........Jan14 .....3
任何幫助很多ap謹慎,謝謝。
我已經嘗試了正確的連接,左連接(他們基本上都是!),它只是返回兩個記錄都有的記錄。 – missspeedy
好吧,你是否嘗試使用內部連接並在select中添加TableA.status? – lloydom
這是我想要使用的確切代碼: 選擇 a.BUDGET_STATE_HISTORY_ID作爲ID, b.vis_id, a.STRUCTURE_ELEMENT_ID, a.PREVIOUS_STATE, a.NEW_STATE, a.CHANGED_TIME FROM BUDGET_STATE_HISTORY a RIGHT JOIN BUDGET_CYCLE b on b.budget_cycle_id = a.budget_cycle_id 其中b.model_ID ='1'和a.structure_element_id ='1057' – missspeedy