我已经成功地将我的本地tzinfo导入到mysql中,除了一个字段之外,我已经完成了关于如何存储和使用这些数据的所有细节。有一个名为Transition_type_id的数字字段(在表time_zone_transition_type中)似乎包含某种可能很重要的数字数据,但是没有查找表,它的功能不是很明显。
是的,我知道我可以使用mysql的内置函数来利用这些数据,但我也想了解一下发生了什么。
答案 0 :(得分:2)
此查询将拼合各个时区表并显示美国东部时区的过渡列表。
SELECT n.name, n.time_zone_id, z.Use_leap_seconds,
tt.offset, tt.Is_DST, tt.Abbreviation,
FROM_UNIXTIME(t.Transition_time) AS p,
t.Transition_type_id
FROM time_zone_name AS n
JOIN time_zone AS z USING(time_zone_id)
JOIN time_zone_transition AS t USING (time_zone_id)
JOIN time_zone_transition_type AS tt USING(time_zone_id,transition_type_id)
WHERE NAME='America/New_York'
transition_type_id
标识过渡类型(“前进”,“后退”等)。它通过链接到time_zone_transition_type
表来实现。那里有很多价值观。
关于这个数据集合的一个奇怪的事情是一堆负time_zone_transition.transition_time
值,指的是UNIX纪元之前的时间戳。