在 MySQL 中將 INT 轉換為 DATETIME?
你可以使用內建函式 from_unixtime() 將 INT 轉換為 DATETIME。語法如下所示 −
SELECT FROM_UNIXTIME(yourColumnName,’%Y-%m-%d') as AnyVariableName from yourTableName;
為了理解上述語法,讓我們首先建立一個表。建立表的查詢如下 −
mysql> create table IntToDateDemo -> ( -> Number int -> ); Query OK, 0 rows affected (0.59 sec)
使用插入命令在表中插入一些記錄。插入記錄的查詢如下 −
mysql> truncate table IntToDateDemo; Query OK, 0 rows affected (4.11 sec) mysql> insert into IntToDateDemo values(1545284721); Query OK, 1 row affected (0.19 sec) mysql> insert into IntToDateDemo values(1576820738); Query OK, 1 row affected (0.19 sec) mysql> insert into IntToDateDemo values(1513748752); Query OK, 1 row affected (0.24 sec) mysql> insert into IntToDateDemo values(1671515204); Query OK, 1 row affected (0.18 sec)
你現在可以使用 select 語句顯示錶中的所有記錄。查詢如下 −
mysql> select *from IntToDateDemo;
輸出
+------------+ | Number | +------------+ | 1545284721 | | 1576820738 | | 1513748752 | | 1671515204 | +------------+ 4 rows in set (0.00 sec)
以下是使用 from_unixtime() 函式將 int 轉換為 datetime 的查詢。查詢如下 −
mysql> select from_unixtime(Number,'%Y-%m-%d') as DateDemo from IntToDateDemo;
以下是顯示轉換後的日期時間的輸出 −
+------------+ | DateDemo | +------------+ | 2018-12-20 | | 2019-12-20 | | 2017-12-20 | | 2022-12-20 | +------------+ 4 rows in set (0.00 sec)
廣告