2012-07-17 87 views
1

我有一個3字段。Mysql日期和時間字段和GMT偏移

1. Date (as DATE) 
2. Time (as TIME) 
3. GMT Offset (as TIME) 

我需要將3個字段一起添加以檢索最終的DATETIME字段。

i)我如何做到這一點,並應對重疊的日子,格林威治標準時間偏移將日期帶入新的一天?

ii)將日期和時間存儲爲單個DATETIME字段更有效嗎?如果是這樣,那麼GMT偏移呢?把它作爲一個TIME字段,或者其他的東西?

回答

1

我的意見是,最好將前兩個字段存儲爲DATATIMEMyDateTime)字段。然後,這是一個使用

SELECT TIMESTAMPADD(HOUR,GMT_Offset,MyDateTime)把它放在一起。

當然,如果你願意,你可以只把它所有的人都到一個單一的表達:

SELECT TIMESTAMPADD(HOUR,GMT_Offset,TIMESTAMP(MyDate,MyTime)) 

我假設MyDateMyTime已經在格林尼治標準時間。

+0

感謝Holger,TIMESTAMPADD完美地工作。 – croc 2012-07-18 00:21:01