Computer >> Máy Tính >  >> Lập trình >> MySQL

Chuyển đổi INT thành DATETIME trong MySQL?

Bạn có thể sử dụng hàm tích hợp from_unixtime () để chuyển đổi INT thành DATETIME. Cú pháp như sau -

SELECT FROM_UNIXTIME(yourColumnName,’%Y-%m-%d') as AnyVariableName from
yourTableName;

Để hiểu cú pháp trên, trước tiên chúng ta hãy tạo một bảng. Truy vấn để tạo bảng như sau -

mysql> create table IntToDateDemo
   -> (
   -> Number int
   -> );
Query OK, 0 rows affected (0.59 sec)

Chèn một số bản ghi trong bảng bằng lệnh chèn. Truy vấn để chèn bản ghi như sau -

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)

Bây giờ bạn có thể hiển thị tất cả các bản ghi từ bảng bằng cách sử dụng câu lệnh select. Truy vấn như sau -

mysql> select *from IntToDateDemo;

Đầu ra

+------------+
| Number     |
+------------+
| 1545284721 |
| 1576820738 |
| 1513748752 |
| 1671515204 |
+------------+
4 rows in set (0.00 sec)

Đây là truy vấn chuyển đổi int thành datetime bằng cách sử dụng hàm from_unixtime (). Truy vấn như sau -

mysql> select from_unixtime(Number,'%Y-%m-%d') as DateDemo from IntToDateDemo;

Sau đây là kết quả hiển thị ngày giờ đã chuyển đổi -

+------------+
| DateDemo   |
+------------+
| 2018-12-20 |
| 2019-12-20 |
| 2017-12-20 |
| 2022-12-20 |
+------------+
4 rows in set (0.00 sec)