2014-07-14 16 views
-3
buildname versionname methodresult 
    b1   v1   success 
    b1   v2   failure 
    b2   v1   success 
    b2   v1   failure 
    b1   v2   skip 
    b2   v1   skip 
    b3   v1   success   
    b3   v2   success 

在上面的例子中,我需要得到的只有buildnameB3它只有success not filure or skip使用mysql能否請你給我提供了我的SQL查詢以下情況

我需要獲取所有的成功作爲方法結果的構建名。如果一個構建名既有成功又有失敗,即使在任何行都成功,我也不需要構建名。

謝謝

+1

爲什麼不使用典型的SELECT語句和WHERE條件來得到你想要的?或者你是SQL新手? – Saechel

+0

我需要獲取所有構建名稱作爲方法的結果。如果一個構建名稱既有成功又有失敗,即使在任何行都有成功,我也不需要構建名稱。 – user3835762

+0

OUTER按照相反的標準將表加入到自身,但僅過濾那些外連接結果爲NULL的行 – Strawberry

回答

1

你可以試試這個。

select * from table1 where buildname not in(
select distinct buildname from table1 where 
methodresult in ('failure','skip')); 

謝謝。

這裏是sql小提琴。

SQL Fiddle

+0

其工作非常感謝你。 – user3835762

相關問題