2012-02-01 66 views
-3

我有一個表樣品有六列,名稱分別描述,我需要輸出使用我的樣表,我給出以下

username_s,creation_time,correctiveaction_s,qualitytype_s,mqmsconfigattrkey_s,objectid_s

當我

select username_s ,creation_time,correctiveaction_s,qualitytype_s,atrkey 
from sample 
where objectid_s='Aa11' 
    and mqmsconfigattrkey_s='11626018' 
; 

然後給定輸出第一2我的示例表的列,becoz都qualitytype_s(R和D)具有相同的atrkey。但我只需要R qualitytype_s輸出。如果只有D質量類型的像atrkey 13464430(atrkey)那麼我需要D qualitytype_s輸出。 如何得到這個值可以幫助我請

 
username_s creation_time   correctiveaction_s qualitytype_s atrkey objectid_s 
w201fai  30-NOV-2011 09:14:27 AM null    D    11626018    Aa11 
w201fai  30-NOV-2011 09:14:27 AM Repaired   R    11626018    Aa11 
w201cairh 30-NOV-2011 09:14:27 AM Repaired   R    13460719    Aa11 
w201fai  30-NOV-2011 09:14:27 AM null    D    13460719    Aa11 
w201fai  30-NOV-2011 09:14:27 AM null    D    13464430    Aa11 
+0

清楚。請 – joshua 2012-02-01 10:18:06

+0

我想根據qualitytype_s得到值,使用objectid_s fillter數據的問題,mqmsconfigattrkey_s ..when qualitytype_s是d,R爲mqmsconfigattrkey_s 11626018然後我想從表中 – user1099310 2012-02-01 10:33:31

+0

qualitytype R數據可以是R和D或兩個RD ..是它?? – joshua 2012-02-01 10:40:20

回答

2

要清楚你的問題。您有相同分組列的多個記錄。如果其中一條記錄的QUALITYTYPE_S ='R',那麼你需要那個記錄,否則記錄的地方就是該列='D'。

因此,解決方案將是這樣的:

select * from 
    (select username_s 
       ,creation_time 
       ,correctiveaction_s 
       ,qualitytype_s 
       ,mqmsconfigattrkey_s 
       ,objectid_s 
       , row_number() over (partition by objectid_s , mqmsconfigattrkey_s 
            order by qualitytype_s DESC) as rn 
     from your_table) 
where RN = 1 
/

換句話說,選擇一個記錄每組objectid_s , mqmsconfigattrkey_s。按照qualitytype_s的降序對該組內的記錄進行排序,因此'R'等級高於'D'。


注:如果列可以有超越R以外的值和D你需要額外添加WHERE子句內查詢。

+0

IN MY MY TABLE qualitytype_s COLUMN HAVE D,R,R,D,D VALUSE,and first two value in qualitytype_six column COLUMN HAVE SAME objectid_s,mqmsconfigattrkey_s ... IF mqmsconfigattrkey_s is same for R and D then I want R OUTPUT – user1099310 2012-02-01 12:22:59

+2

我知道你認爲你是在解釋自己,但你確實沒有。如果我的解決方案不能提供您想要的輸出,請編輯您的問題以包含所提供的樣本數據的所需結果。 – APC 2012-02-01 12:32:22

相關問題