我想根据用户时区转换时间,然后再显示日期。 例如如果办公室在芝加哥(美国)上午8:00至下午5:00在周一至周五开放。如果用户希望在印度看到相同的信息,则时间必须显示为晚上8:30至5:30,周一至周六。因为早上5:30是在第二天,即周六,因为有不同的12.30小时 为此,我试图编写一个如下的存储过程:
CREATE PROCEDURE TimeZoneTest
-- Add the parameters for the stored procedure here
@OffSet int ,
@tzAdjust int ,
@BranchID int=985
AS
BEGIN
SET NOCOUNT ON;
Select top 10 starttime ,endtime ,dateadd(mi, @OffSet, dateadd(hh, @tzAdjust, starttime)) as userstarttime,dateadd(mi, @OffSet, dateadd(hh, @tzAdjust, endtime)) as userendtime
from branchhours where branchid = @BranchID
END
GO
在此SP中,我将参数作为用户国家/地区的偏移量传递,并按照要求传递。这是我使用的表格来自我的数据库。