gpt4 book ai didi

sql - 每个日期的事件总数

转载 作者:行者123 更新时间:2023-12-03 17:09:21 26 4
gpt4 key购买 nike

我在开发查询时卡住了。

我有一个表,结构如下:

[EventId] [Description]  [EventName]    [ValidFrom]   [ValidTo]   [Approved]
1 Sample1 1stEvent 2013-01-27 2013-05-10 1
2 Sample2 2stEvent 2013-04-07 2013-06-15 1
3 Sample3 3stEvent 2013-04-07 2013-06-15 1
4 Sample4 4stEvent 2013-03-02 2013-05-29 1
5 Sample5 5stEvent 2013-05-17 2013-07-10 1
6 Sample6 6stEvent 2013-03-20 2013-05-11 1

我想要的是日期范围内每个日期的事件总数,包括在内。

Select distinct 
Convert(varchar,ValidFrom,101)as [Date],
case
when count(EventID)>1 then Convert(nvarchar, count(EventID)) +' Events'
else Convert(nvarchar, count(EventID)) + ' Event'
end as CountOf,
Row_Number()
over (Order By Convert(varchar,ValidFrom,101)) as RowNumber
from [Table]
where Approved=1
group by Convert(varchar,ValidFrom,101)

这是我到目前为止提出的查询,但它显示了特定日期的事件总数,不包括根据有效开始日期和有效结束日期之间的日期继续进行的事件。

最佳答案

此代码示例不完整 - 您需要输入需要显示和聚合的字段。听起来您正在寻找两个日期之间的结果,而您的查询中没有。我不确定我是否完全理解您的问题。

DECLARE @pStartDate DATE
DECLARE @pEndDate DATE

SET @pStartDate = [enter your start date for the date range]
SET @pEndDate = [enter your end date for the date range]

SELECT
COUNT(EventId),
ValidFrom,
ValidTo
FROM [Table]
WHERE
ValidFrom >= @pStartDate
AND ValidTo <= @pEndDate
AND Approved = 1
GROUP BY
ValidFrom,
ValidTo

关于sql - 每个日期的事件总数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17078786/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com