时区转换时注意夏令时的影响
来源:互联网 发布:ai软件如何画图 编辑:程序博客网 时间:2024/05/18 17:04
mysql> select @@time_zone;+-------------+| @@time_zone |+-------------+| SYSTEM |+-------------+mysql> select takeoff_time, last_send_notice_date, hide_date from matchedVideo where id = 3072;+---------------------+-----------------------+---------------------+| takeoff_time | last_send_notice_date | hide_date |+---------------------+-----------------------+---------------------+| 2012-11-10 00:00:00 | 2012-10-29 03:25:53 | 2012-10-24 11:57:41 |+---------------------+-----------------------+---------------------+1 row in set (0.01 sec)mysql> set time_zone = '-0:00';Query OK, 0 rows affected (0.00 sec)mysql> select takeoff_time, last_send_notice_date, hide_date from matchedVideo where id = 3072;+---------------------+-----------------------+---------------------+| takeoff_time | last_send_notice_date | hide_date |+---------------------+-----------------------+---------------------+| 2012-11-10 08:00:00 | 2012-10-29 10:25:53 | 2012-10-24 18:57:41 |+---------------------+-----------------------+---------------------+1 row in set (0.00 sec)mysql> set time_zone = '-7:00';Query OK, 0 rows affected (0.00 sec)mysql> select takeoff_time, last_send_notice_date, hide_date from matchedVideo where id = 3072;+---------------------+-----------------------+---------------------+| takeoff_time | last_send_notice_date | hide_date |+---------------------+-----------------------+---------------------+| 2012-11-10 01:00:00 | 2012-10-29 03:25:53 | 2012-10-24 11:57:41 |+---------------------+-----------------------+---------------------+1 row in set (0.01 sec)
第一条sql是没有强制设置过时区信息时执行的,按照系统所在时区进行查询;第二条执行前设置时区为0时,takeoff_time增加了8个小时,而last_send_notice_date和hide_date都只增加了7个小时;同样,第三条sql执行前我们设置为-7时区时,takeoff_time增加了1个小时,而last_send_notice_date和hide_date都和第一条sql执行出的结果一致
为什么会发生这样的事情呢?
登录机器查看时区
root@aaa:~# dateTue Oct 30 22:56:25 PDT 2012
发现PDT,PDT全称是Pacific Daylight Time(太平洋夏季时间)
通过百度百科可以了解到:
PDT转换成北京时间方法 PDT从每年3月的第二个星期日到11月的第一个星期日期间和北京时间15小时,其余月份和北京时间差16小时 。也就是说每年3月的第二个星期日到11月的第一个星期日期间处于-7时区,其余月份处于-8时区。由此可以知道为什么上面三个sql会有这样的区别!
- 时区转换时注意夏令时的影响
- android 如何修改对应时区的夏令时、冬令时?
- android 如何修改对应时区的夏令时、冬令时?
- [转]android 如何修改对应时区的夏令时、冬令时?
- 关于java时区转换夏令时问题及解决办法
- 夏令时对tm结构的影响
- 去除中国夏令时对日期的影响
- 时区夏令时测试Checklist
- js获得当前时区夏令时发生和终止的时间
- Mysql 时区修改问题(冬令时夏令时)
- 各国时区夏令时切换信息
- Java中的时间、时区和夏令时
- 转换当前的时区到北京时区
- PostgreSQL 时间函数 时区的影响
- 时区间时间的转换
- Joda转换时区的坑
- 时区的历史和转换
- Java里面的夏令时
- 动态添加删除datanode以及tasktracker
- 标准信号(signal.h)
- Android:StatFs类 获取系统/sdcard存储空间信息
- Android monkey test 脚本的编写
- 中国电信-应招知识库(专业知识)
- 时区转换时注意夏令时的影响
- Velocity简介及与Jsp、Freemarker对比
- 深入了解SQL Server动态管理视图
- 如何 解决 flash builder 4 的 exit code7 安装问题
- 关于Oracle class12.jar和 ojdbc14.jar 引发的问题
- 五、简单 介绍一下 变量
- 读《软件测试经典教程》有感
- 最近项目总结
- SQL Server服务器级别的动态管理视图