如何修改服务器日期以使其与用户的日期对齐(提前8小时)

时间:2017-03-01 06:50:43

标签: sql-server asp.net-mvc

我有这个SQL,它创建了一个按日期分组的报告:

select [Date] = convert(date, a.Date)
    , [Count] = count(*)
from Audit a
group by a.Date

问题是SQL Server日期比用户输入数据的日期晚了8个小时。

有没有办法可以更改用于群组的日期,以便按照用户时区的正确日期(提前8小时)进行分组

所以对此:

2017-03-01 1:45
2017-03-01 8:45
2017-03-01 8:45
2017-03-01 8:47
2017-03-01 8:45

之前 - 不正确

2017-03-01 5

之后 - 我需要什么

2017-03-01 1
2017-03-01 4

1 个答案:

答案 0 :(得分:-2)

尝试使用dateadd函数在查询中添加8小时。

选择[日期] = CONVERT(VARCHAR(10),DATEADD(HOUR,8,a.date),101)     ,[计数] =计数(*) 来自审计a CONVERT组(VARCHAR(10),DATEADD(HOUR,8,a.date),101)