MySQL datetime:插入带有时区偏移量的日期

San*_*yBr 6 mysql datetime date

我试图在'日期'中插入一个时间戳:

INSERT INTO dates VALUES (4, "2011-10-04 12:58:36 -0600")
Run Code Online (Sandbox Code Playgroud)

4只是一个ID.在表中,它插入为:

2011-10-04 12:58:36 or 0000-00-00 00:00:00
Run Code Online (Sandbox Code Playgroud)

所以我的问题是,时差-0600丢失了.我怎么也插入它?

小智 7

您可以使用SUBSTR()来关闭它,使用CONVERT_TZ()来转换它.

像这样的东西

INSERT INTO table_name  CONVERT_TZ(SUBSTR('2011-10-04 12:58:36 -0600',1,19),'+00:00',SUBSTR('2011-10-04 12:58:36 -0600',20));
Run Code Online (Sandbox Code Playgroud)