我有一些數據似乎沒有正確計算。當我查看原始數據時,我會在給定的列中看到5個不同的值,但是當我運行「Count(Distinct ColA)」時,它會報告4.對於我所分組的所有類別,這也是如此,而不僅僅是一。例如。當有3個,一個第三值報告1當有2等SQL「Count(Distinct ...)」比實際數據顯示的返回值小1?
表A中列中的第二值報告2:ID,類型
表B:ID_FK,WorkID,日期
這裏是我的查詢彙總:
SELECT COUNT (DISTINCT B.ID_FK), A.Type
FROM A INNER JOIN B ON B.ID_FK = A.ID
WHERE Date > 5/1/2013 and Date < 5/2/2013
GROUP BY Type
ORDER BY Type
和結果的一個片段:
4|Business
2|Design
2|Developer
以下是我的數據樣本,未彙總。管道是分離器;我只是刪除了「個性化......」和「GROUP BY ...」查詢的部分上面得到這個:
4507|Business
4515|Business
7882|Business
7889|Business
7889|Business
8004|Business
4761|Design
5594|Design
5594|Design
5594|Design
7736|Design
7736|Design
7736|Design
3132|Developer
3132|Developer
3132|Developer
4826|Developer
5403|Developer
正如你可以從數據看,企業應該是5,而不是4,至少這是我的眼睛告訴我的。 :)
我正在使用它的內部ExecuteSQL調用在FileMaker 12解決方案中運行此操作。不過,不要太擔心:代碼應該和其他幾乎相同。 :)
任何幫助,將不勝感激。
感謝, Ĵ
只是爲了排除顯而易見的......你也包括你的該非彙總數據集中的where子句...正確嗎? – 2013-05-10 23:36:02
我會嘗試刪除'distinct'並在兩列上使用'group by',而不是'按類型,B.ID_FK'分組,以查看是否有任何差異。 – Rots 2013-05-10 23:45:36
這個產品是否翻譯過「Date> 5/1/2013」?我認爲你應該使'日期>'5/1/2013''或甚至更好'日期>'2013-01-05''。 – 2013-05-11 00:11:18