我是新来的,所以请保持温和,我长期使用本网站后的第一个问题是:
我试图在过去30天内创建一系列事件:
select key, sum((COALESCE(count(*),0)))
from table
Where date>= '2016-08-13'
And date<= '2016-09-11'
group by key;
但总和似乎不起作用。我查看过去30天,我想计算每个密钥存在的任何行,然后计算总数(我需要每天计算,然后计算全天的数量) )。
如果您可以提供任何其他方式来处理此问题,我可以提出建议!
非常感谢, 希拉
答案 0 :(得分:2)
您无法在HQL(或SQL)中嵌套聚合函数。但是,如果您只想让每个键的记录数落在范围内,那么您只需使用COUNT(*)
:
select key, count(*)
from table
where date >= '2016-08-13' and
date <= '2016-09-11'
group by key;
答案 1 :(得分:0)
您的代码看起来有些问题。 我已经为你写了这个,还没有测试过,但它通过了语法测试。
SELECT COUNT(key) AS Counting FROM tblname
WHERE date>= '2016-08-13'
AND date<= '2016-09-11'
GROUP BY key;
而this可能会对您有所帮助。你肯定应该在这个查询中使用COUNT。
我不确定它是否相关,但调用字段键可能会出现问题&#39;我一直收到语法错误。
希望我能够提供帮助!
-Krypton