在SQL Server 2000中即时将GMT日期转换为BST

时间:2010-11-12 09:27:59

标签: sql sql-server-2000

我有一个表,其中包含一个月内每30分钟的值,例如

20/03/2010 00:00    12  
20/03/2010 00:30    14  

所有这些数据都存储在GMT

我需要在此表上选择bst / clock time中的数据

例如

select *  
from tbl  
where dt between '01 April 2010' and '30 April 2010 23:30'  

在BST中,因为上面的日期范围是需要转换的日期

我还需要一种方法来考虑转换时间和3月和10月结束

不幸的是我无法升级SQL服务器

有没有办法在SQL for SQL Server 2000中执行此操作?

类似我能做的功能?

select *  
from tbl  
where fnConvertToClockTime(dt) between '01 April 2010' and '30 April 2010 23:30'  

在GMT中,该函数将从表中返回确切的日期

干杯

鲁珀特

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,正在研究如何使用Calendar表进行此类收集。以UTC时间存储所有日期然后根据需要进行转换,我可能会为不同的时区创建VIEWS以避免参数传递,但我想存储过程也可以。

我在这里找到了一些有用的信息:how-do-i-convert-local-time-to-utc-gmt-time

此处有关于日历表的相关文章:why-should-i-consider-using-an-auxiliary-calendar-table