溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL中FROM_UNIXTIME()和UNIX_TIMESTAMP()函數如何使用

發布時間:2021-07-28 14:23:27 來源:億速云 閱讀:353 作者:Leah 欄目:數據庫

MySQL中FROM_UNIXTIME()和UNIX_TIMESTAMP()函數如何使用,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

1、FROM_UNIXTIME( unix_timestamp ) 
參數:通常是壹個十位的數字,如:1344887103 
返回值:有兩種,可能是類似 'YYYY-MM-DD HH:MM:SS' 這樣的字符串,也有可能是類似于 YYYYMMDDHHMMSS.uuuuuu 這樣的數字,具體返回什么取決于該函數被調用的形式。 

1mysql> select FROM_UNIXTIME(1344887103);
2+---------------------------+
3|
FROM_UNIXTIME(1344887103) |
4+---------------------------+
5|
2012-08-14 03:45:03       |
6+---------------------------+
7

1
row 
in set (0.00
sec)

2、FROM_UNIXTIME( unix_timestamp ,format ) 
參數 unix_timestamp :與方法 FROM_UNIXTIME( unix_timestamp ) 中的參數含義一樣; 
參數 format : 轉換之后的時間字符串顯示的格式; 
返回值:按照指定的時間格式顯示的字符串; 

view
sourceprint?

01mysql> select FROM_UNIXTIME(1344887103,'%Y-%M-%D
%h:%i:%s'
);
02+-----------------------------------------------+
03|
FROM_UNIXTIME(1344887103,
'%Y-%M-%D
%h:%i:%s'
)
|
04+-----------------------------------------------+
05|
2012-August-14th 03:45:03                     |
06+-----------------------------------------------+
071
row 
in set (0.00
sec)
08mysql> select FROM_UNIXTIME(1344887103,'%Y-%m-%D
%h:%i:%s'
);
09+-----------------------------------------------+
10|
FROM_UNIXTIME(1344887103,
'%Y-%m-%D
%h:%i:%s'
)
|
11+-----------------------------------------------+
12|
2012-08-14th 03:45:03                         |
13+-----------------------------------------------+
14 
151
row 
in set (0.00
sec)

1、UNIX_TIMESTAMP()

返回值:當前時間的UNIX格式數字串,或者說是 UNIX 時間戳(從 UTC 時間'1970-01-01 00:00:00'開始的秒數),通常為十位,如 1344887103。Java里面 new Date().getTime()得到的結果是13位的,而數據庫轉化的是10位的。

1mysql> select unix_timestamp();
2+------------------+
3|
unix_timestamp() |
4+------------------+
5|      
1344887103 |
6+------------------+
71
row 
in set (0.00
sec)

2、UNIX_TIMESTAMP( date ) 
參數:date 可能是個 DATE 字符串,DATETIME 字符串,TIMESTAPE 字符串,或者是一個類似于 YYMMDD 或者 YYYYMMDD 的數字串。 
返回:從 UTC 時間'1970-01-01 00:00:00'開始到該參數之間的秒數。服務器將參數 date 解釋成當前時區的壹個值并且將其轉化成 UTC 格式的內部時間??蛻舳藙t可以自行設置當前時區。當 UNIX_TIMESTAMP() 用于壹個 TIMESTAMP 列時,函數直接返回內部時間戳的值;如果你傳遞壹個超出范圍的時間到 UNIX_TIMESTAMP(),它的返回值是零。 

01mysql> SELECT UNIX_TIMESTAMP();
02+------------------+
03|
UNIX_TIMESTAMP() |
04+------------------+
05|      
1344888895 |
06+------------------+
071
row 
in set (0.00
sec)
08 
09mysql> SELECT UNIX_TIMESTAMP('2012-08-14
16:19:23'
);
10+---------------------------------------+
11|
UNIX_TIMESTAMP(
'2012-08-14
16:19:23'
)
|
12+---------------------------------------+
13|                           
1344932363 |
14+---------------------------------------+
151
row 
in set (0.00
sec)

注意:如果你使用 UNIX_TIMESTAMP() 和 FROM_UNIXTIME() 來轉換 TIMESTAMP 值與 Unix 時間戳的值,精度會丟失,因為這個映射在兩個方向上不是一一對應的。比如說,由于本地時區的更改,有可能兩個 UNIX_TIMESTAMP() 會映射到同壹個 Unix 時間戳的值。 FROM_UNIXTIME() 只會映射到原來的那個時間戳的值上。

關于MySQL中FROM_UNIXTIME()和UNIX_TIMESTAMP()函數如何使用問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女