我有以下的情況(簡體):DB2連接困難
2雙溫表
- basicdata(ID,btmp_tsd,姓名,女士prename)
- extendeddata(ID,btmp_tsd,basicid,代號,codevalue)
在擴展數據中,對於一個基本數據可以有多個條目,每個條目名稱和值都不同。
我必須創建一個SQL來選擇自指定時間以來已更改的所有行。對於basicdata表,這是比較簡單的:
SELECT ID, BTMP_TSD, NAME, PRENAME
FROM BASICDATA BD
WHERE BTMP_TSD =
(SELECT MAX(BTMP_TSD)
FROM BASICDATA BD2
WHERE BD2.ID = BD.PRTNR_ID
AND BD2.BTMP_TSD > :MINTSD
AND BD2.BTMP_TSD <= :MAXTSD
)
ORDER BY ID
WITH UR
現在我需要加入第二臺獲得了代號爲「測試」的codevalue。問題是,它可能不存在,在這種情況下,無論如何應該收集該行。但是如果有一行但不在時間範圍內,我不應該得到結果。
我希望我能解釋我的問題。加入是的事情,我還沒有看到一個低谷......
編輯: 好這裏是一個樣本
basicdata:
id,btmp_tsd,name,prename
1,2013-05-25,test,user
2,2013-06-26,user,two
3,2013-06-26,peter,hans
1,2013-06-20,test,us3r
2,2013-10-30,us3r,two
extendeddata:
id,btmp_tsd,basicid,codename,codevalue
1,2013-05-25,1,superadmin,1
2,2013-06-26,3,admin,1
3,2013-11-25,1,superadmin,0
好了,現在有這些條目,我希望所有的用戶ID的這不得不因爲任何變化2013年10月1日我應該得到
用戶1(因爲extendeddata超級管理員有變化)
用戶2(有一個名字昌e和我想他甚至強硬,他對extendeddata表中沒有條目)
沒有用戶3(他有兩個表的條目,但它不是在指定的範圍內)
您可以添加一些示例數據和預期結果嗎? –
我添加了一些示例數據和我期望的內容 – Xavjer