繁体   English   中英

按日期查询的SQL百分比计数

[英]SQL Percentage Count Query By Date

我能够使用以下方法计算Microsoft Access 2007 SQL查询中特定日期的百分比计数:

SELECT Date, Val, (Count(Val) / (SELECT Count(*) From Table HAVING Date=#7/31/2012#) as PercentVal    
FROM Table  
GROUP BY Date, Val  
HAVING Date=#7/31/2012#

但是,我想使用count total在每个日期进行相同的计算。 例如,查询:

SELECT Date, Val, Count(*) AS CountVal  
FROM Table  
GROUP BY Date, Val  

查找每个时期的计数。 我想添加一个带有百分比计数的附加列。 但是,我似乎无法弄清楚如何在不使用上述文本块并为每个单独的时期设置查询的情况下,计算每个时期的计数百分比。

您可以像这样子查询它:

SELECT A.ADate, A.Val, COUNT(A.Val) / B.DateCount
FROM Table1 AS A
INNER JOIN (
    SELECT C.ADate, COUNT(*) AS DateCount
    FROM Table1 C
    GROUP BY C.ADate
) AS B ON A.ADate = B.ADate
GROUP BY A.ADate, A.Val, B.DateCount

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM