2015-03-31 87 views
0

i have database like this...SQL服務器數再行

how i can result like this ?

怎麼可能會導致我這樣? 在我看來,我可以查詢=>

select id, count(no1, no2, no3) where no1='B',no2='B',no3='B' 

非常感謝。

回答

1

使用Case When陳述與Count骨料。最後,集團他們id

Select id, 
     count(case when no1='B' then 1 END) + 
     count(case when no2='B' then 1 END) + 
     count(case when no3='B' then 1 END) AS count_all 
From yourtable 
Group by id 
+0

的Rigels ...您的權利...〜_^ – SimanisJKT48 2015-03-31 02:20:11

+0

的歡迎^ _^ – Rigel1121 2015-03-31 02:26:30

+1

兩個'Count'和'集團by'不需要這是一個不必要的開銷 – 2015-03-31 02:34:35

3

使用Case Statement

select id, 
     case when no1='B' then 1 else 0 END + 
     case when no2='B' then 1 else 0 END + 
     case when no3='B' then 1 else 0 END As Count_All 
From yourtable 
+0

感謝的非常... Fireblade爲感謝 – SimanisJKT48 2015-03-31 02:20:49