2015-04-23 180 views
2
Name Value AnotherColumn 
----------- 
Pump 1 8000 Something1 
Pump 1 1000 Something2 
Pump 1 3000 Something3 
Pump 2 3043 Something4 
Pump 2 4594 Something5 
Pump 2 6165 Something6 

在這個表中,我想按名稱列進行分組,並給出名稱爲value_exist的輸出。mysql - 如果select語句中的語句

如果1000位於該名稱組的任何值列中,則value_exist將爲1。所以輸出將是:

Name value_exist 
----------- 
Pump 1 1 
Pump 2 0 

回答

2

也許是這樣的:

select name, MAX(CASE WHEN value=1000 THEN 1 ELSE 0 END) as value_exist 
from your_table 
group by name 
0
select name, sum(value = 1000) as value_exist 
from your_table 
group by name 
1

還有一個:

select name , max(if(value=1000,1,0)) as value_exist 
from table 
group by name;