MySQL中的時間戳是指從Unix紀元(即1970年1月1日00:00:00 UTC)起經過的秒數。通常情況下,時間戳是一個10位的整數。
然而,在某些情況下,需要使用13位的時間戳。13位時間戳表示的是從Unix紀元開始到現在的毫秒數。與10位時間戳相比,13位時間戳可提供更高的精度。
MySQL中獲取13位時間戳的方法有兩種:
SELECT UNIX_TIMESTAMP(NOW()) * 1000;
這里使用NOW()函數獲取當前時間,UNIX_TIMESTAMP()函數將時間轉換為10位時間戳,最后乘以1000得到13位時間戳。
SELECT ROUND(UNIX_TIMESTAMP(CURTIME(4)) * 1000);
這里使用CURTIME(4)函數獲取當前時間的毫秒數,UNIX_TIMESTAMP()函數將時間轉換為10位時間戳,最后使用ROUND()函數將小數部分四舍五入得到整數。
13位時間戳可以在一些需要高精度時間記錄的應用中使用,例如電商訂單系統中記錄訂單創建或更新時間。