2011-10-09 98 views
0

計數我有一個表這個數據稱爲消息(ID,類別,用戶)返回最後一個ID和id

1 1 aaa 
2 2 aaa 
3 3 aaa 
4 1 bbb 
5 2 aaa 
6 1 ccc 
7 2 aaa 
8 3 ddd 

我想只返回一行,與數量(在示例中爲)和該類別的最後一個id(在示例中爲)。

我該如何處理MySql查詢?

+0

隨着COUNT和MAX :) –

+0

如果你真的想要得到實際的行數,不要使用計數。此外,如果您的某個ID被刪除,Count不能給你一個錯誤的值。相反,你必須使用一個新的變量。但問題在於你如何真正實現這一點。如果它通過像mysql_query()這樣的PHP函數,則不能在查詢中使用多個SQL語句。所以首先你需要說明你將如何實現這一點。 – itsols

+1

「另外,如果你的一個ID被刪除,Count不能給你一個錯誤的值」?什麼?你能舉一個這個「bug」的例子嗎? – markzzz

回答

4
select count(*), max(id) from mytab where category = 1 
2
SELECT category, COUNT(category) AS counter, MAX(id) AS max FROM messages 
GROUP BY category 
+0

這不返回最後一個ID ... – markzzz

+0

什麼是返回?最大 –

0
SELECT COUNT(id), MAX(id) FROM tblName 
WHERE category = 1 
GROUP BY category