SELECT UNIX_TIMESTAMP('2021-02-20 12:30:00');
以上代码的输出结果为1613824200。即,将字符串“2021-02-20 12:30:00”转换为unix timestamp后得到1613824200。
若要将日期时间转换为以毫秒为单位的long类型,可以使用如下代码:
SELECT UNIX_TIMESTAMP('2021-02-20 12:30:00')*1000;
以上代码的输出结果为1613824200000,即将以秒为单位的unix timestamp乘以1000得到以毫秒为单位的long类型。
当然,也可以通过CAST函数将日期字符串转换为DATETIME格式后再使用UNIX_TIMESTAMP函数进行转换:
SELECT UNIX_TIMESTAMP(CAST('2021-02-20 12:30:00' AS DATETIME))*1000;
以上代码的输出结果与之前的相同,依然为1613824200000。
总的来说,MySQL中字符串日期转long可以使用UNIX_TIMESTAMP函数,同时也可以将字符串转换为DATETIME格式后再进行转换。