【发布时间】:2011-03-08 18:19:11
【问题描述】:
我有一个工单表 common_ticket,其中有一个名为 creation_date 的列,其中包含创建日期。
我想计算过去几个月每周创建的票证数量。我无法编写 SQL 查询来返回此类信息。只要每个单独的星期都有一个不同的数字,它如何返回并不重要。
有人对如何做到这一点有任何想法吗?
【问题讨论】:
标签: sql postgresql
我有一个工单表 common_ticket,其中有一个名为 creation_date 的列,其中包含创建日期。
我想计算过去几个月每周创建的票证数量。我无法编写 SQL 查询来返回此类信息。只要每个单独的星期都有一个不同的数字,它如何返回并不重要。
有人对如何做到这一点有任何想法吗?
【问题讨论】:
标签: sql postgresql
类似:
选择提取(从创建日期开始的星期), 提取(从创建日期开始的年份), 数数(*) 来自门票 GROUP BY 提取(从创建日期开始的一周), 提取(从创建日期开始的年份)【讨论】:
应该这样做:
SELECT [t1].[value] AS [Year], [t1].[value2] AS [Week], COUNT(*) AS [Count]
FROM (
SELECT DATEPART(Year, [t0].[creation_date]) AS [value],
DATEPART(Week, [t0].[creation_date]) AS [value2]
FROM [common_ticket] AS [t0]
) AS [t1]
GROUP BY [t1].[value], [t1].[value2];
【讨论】: