我住在一个他们每年改变两次时间的国家。即:一年中有一段时间与UTC的偏移量为-3小时(-180分钟),而其他时间段的偏移量为-4小时(-240分钟)
形象地说:
|------- (offset = -3) -------|------- (offset is -4) -------|
start of year mid end of year
我的问题是:
“时区”只是代表偏移量的数字?那就是:我的国家有两个时区?或时区包含此信息?
这很重要,因为我将每个日期都保存在我的数据库中的 UTC 时区(偏移量 = 0)中。
相反,我是否应该使用本地时区保存日期并保存它们的偏移量(在保存时)?
这是我通过使用时区 UTC 保存日期看到的一个问题示例:
假设我有一个人们发送消息的系统。
我想要一个统计部分,在其中绘制“发送的消息v / s小时”(即:“在常规日子按小时发送的消息”)
假设整个数据库中只有两条消息:
- 消息 1,于 3 月 1 日发送,UTC 时间下午 5 点(当地时间下午 2 点)
- 消息 2,于 8 月 1 日在 UTC 时间下午 5 点(当地时间下午 1 点)发送
然后,如果我在 8 月 2 日创建情节,将这些 UTC 日期转换为本地日期会给我:“下午 1 点发送的 2 条消息”,这是不稳定的信息!