2014-11-08 66 views
0

我需要的唯一記錄的計數類似如下結構MySQL的:如何獲得獨特的記錄具有多個GROUPBY

DATE  | STATUS | EMPLOYEE|UNIQUEDATE|UNIQUESTATUS|UNIQUEEMPLOYEE 
20-1-2013 active John   7   3    2 
20-1-2013 active John   7   3    2 
20-1-2013 active Kyle   7   3    1 
20-1-2013 inactive mohan   7   4    1 
20-1-2013 inactive subbu   7   4    3 
20-1-2013 inactive subbu   7   4    3 
20-1-2013 inactive subbu   7   4    3 

計數基於所獲得的輸出值計數

我試過這個查詢:

select DATE,STATUS,EMPLOYEE,COUNT(DATE) as DATECOUNT,COUNT(STATUS) as DATESTATUS ,COUNT(EMPLOYEE) as DATEEMPLOYEE from dailyincome group by DATE,STATUS,EMPLOYEE 

但是所有三列的計數是相同的。

+0

您是否有SQL小提琴和一些示例數據?當我擁有所需的輸出時,我很難看到你想要做的是什麼 – AdamMc331 2014-11-08 22:41:38

回答

-1

試試這個:

select DATE,STATUS,EMPLOYEE, 
    COUNT(DISTINCT DATE) as DATECOUNT, 
    COUNT(DISTINCT STATUS) as DATESTATUS , 
    COUNT(DISTINCT EMPLOYEE) as DATEEMPLOYEE 
from dailyincome group by DATE,STATUS,EMPLOYEE 

我沒有訪問您的數據,所以無法測試,但在COUNT()函數的「獨特」的關鍵字應該做你所需要的。我們可能需要添加GROUP BY子句

+0

我得到以下錯誤#1064 - 你的SQL語法錯誤;檢查與您的MySQL服務器版本相對應的手冊,以便在'UNIQUE DATE'附近使用正確的語法作爲來自dailyincome的DATECOUNT – sanjeeviraj 2014-11-08 14:14:10

+0

'UNIQUE'應該是'DISTINCT' @sanjeeviraj嘗試。 – 2014-11-08 14:22:04

+0

UNIQUE是一種特殊的索引類型...這是完全錯誤的 – 2014-11-08 14:23:10

相關問題