2016-10-10 152 views
0

我想總結count給出的總行數。 我的代碼是這樣的:如何總結總行數? MySQL

select count(*) from violationprofile where Year = 'Second Year' GROUP BY IDNumber; 

,但它給我的

COUNT(*)
4 ------>因爲我有同樣的IDNumber的4項結果
1 ------>只有一個ID號的條目

我想得到2的結果,因爲總的行數只有2. 可能嗎?謝謝!

回答

1

你可以這樣做:

select count(distinct IDNumber) 
from violationprofile 
where Year = 'Second Year' 
+0

它給了我一個零結果; –

+0

你確定你在你的查詢中放置了與where子句相同的where子句嗎?因爲如果你的原始查詢返回了這個行,就不可能得到0,如果sqlfiddle.com願意,你可以在這裏看到一個例子: http://sqlfiddle.com/#!9/bf0a69/1 – trincot

+0

對不起,第一個是正確的,我錯了,沒有注意到我把where子句改爲'Fourth Year',我沒有輸入。我的錯,謝謝它的工作!:D –

0

您可以從您的新結果選擇行數:

select count(*) from (select count(*) from violationprofile where Year = 'Second Year' GROUP BY IDNumber) as T; 
+0

什麼是 「XXX」 代表? –

+0

Nothing,I remove it ... – sidanmor

+0

出現錯誤:'( #1248 - 每個派生表都必須有自己的別名 –