如何在MySQL中将Unix时间戳转换为UTC 0格式?
实现UTC 0时区的时间转换
当然可以实现,给你两种常用的解决方案:
方案一:使用convert_tz()函数转换时区
from_unixtime()默认会用当前会话的时区解析时间戳,你可以通过convert_tz()将其转换为UTC 0时区后再格式化:
date_format(convert_tz(from_unixtime(timestamp), @@session.time_zone, '+00:00'), '%Y-%m-%eT%k:%i:%s') AS 'Fecha'
说明:@@session.time_zone代表当前会话使用的时区,+00:00对应UTC 0时区,该方法兼容绝大多数MySQL版本。
方案二:直接指定from_unixtime()的时区参数(MySQL 8.0+适用)
如果你的MySQL版本是8.0及以上,from_unixtime()支持通过第二个参数指定时区,直接传入'+00:00'就能得到UTC时间,写法更简洁:
date_format(from_unixtime(timestamp, '+00:00'), '%Y-%m-%eT%k:%i:%s') AS 'Fecha'
内容的提问来源于stack exchange,提问作者E_Blue
相关产品推荐
相关产品推荐

