2013-08-06 54 views
0

我正試圖在表上運行一個查詢,以查看有多少唯一用戶在給定時間點在系統中有一個使用記錄。我一直在處理以下查詢,但我還沒有看到正確的結果。MySQL分組錯誤

SELECT count(distinct usageUser), divisionName 
FROM records R 
INNER JOIN locate L 
    ON L.computerID=R.usageComputerID 
WHERE R.usageWhen LIKE "2012-07-08T12:%" 
GROUP BY L.divisionName; 

當前查詢返回18,對於連接表中的每個分區。如果沒有GROUP BY子句,我會得到相同數量的記錄。

編輯: 我再次運行查詢,從評論的建議。通過刪除group by和count子句,我得到這個this(太大而不能發佈)。這些數據的格式非常差,不幸的是它是繼承的並且相當大。

這些用戶不可能使用列出的每個實驗室。

+0

爲什麼你認爲這是錯的?有18個不同的divisonName值或不是? – idipous

+0

您的查詢對我來說是正確的。在沒有GROUP BY和COUNT的情況下運行它,並檢查結果是否有意義。 – Vatev

+0

@idious它告訴我,*每個*部分有18個不同的用戶,這是不正確的。總共有49個師。 Vatev:我會稍後發佈一個修改。 – Jacobm001

回答

0
SELECT count(*) cnt, L.divisionName, R.usageUser 
FROM records R 
INNER JOIN locate L 
    ON L.computerID=R.usageComputerID 
WHERE R.usageWhen LIKE "2012-07-08T12:%" 
GROUP BY L.divisionName,R.usageUser;