utc转换成时间 mysql,如何在MySql中将unix时间戳转换为UTC日期?

我将一堆数据存储在mysql数据库中,作为一堆unix样式时间戳(UTC).以前,这些已经通过Perl的gmtime()格式化.似乎MySQL的FROM_UNIXTIME()函数试图提供帮助,并且正确用于夏令时,但我真的不希望它.

有没有一个方便的方法将结果从系统时区(GMT / BST)转换为UTC,或者交替确定DST是否在特定时间内有效?

解决方法:

你有没有尝试过:

mysql> SELECT NOW();

+---------------------+

| NOW() |

+---------------------+

| 2011-04-04 22:54:13 |

+---------------------+

1 row in set (0.00 sec)

mysql> set @var = unix_timestamp(NOW());

Query OK, 0 rows affected (0.00 sec)

mysql> SET time_zone='+00:00';

Query OK, 0 rows affected (0.00 sec)

mysql> SELECT NOW();

+---------------------+

| NOW() |

+---------------------+

| 2011-04-04 20:54:23 |

+---------------------+

1 row in set (0.00 sec)

mysql> SELECT FROM_UNIXTIME(@var);

+---------------------+

| FROM_UNIXTIME(@var) |

+---------------------+

| 2011-04-04 20:54:17 |

+---------------------+

1 row in set (0.02 sec)

如果要使用命名时区,可以查看this page以获取更多信息,以及如何填充系统上的时区表.

标签:mysql,internationalization

来源: https://codeday.me/bug/20190630/1339570.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值