Để trích xuất một phần của cột TIMESTAMP (như năm, tháng, ngày), sử dụng các hàm: YEAR(), MONTH(), DAY(), HOUR(), MINUTE(), SECOND().
Cú pháp trích xuất năm
SELECT YEAR(ten_cot_timestamp) AS ten_alias FROM ten_bang;
Ví dụ minh họa
Tạo bảng:
mysql> CREATE TABLE SelectPartOfTimestampDemo (
-> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> ShippingTime TIMESTAMP
-> );
Chèn dữ liệu với các năm khác nhau:
mysql> INSERT INTO SelectPartOfTimestampDemo(ShippingTime) VALUES(NOW()); mysql> INSERT INTO SelectPartOfTimestampDemo(ShippingTime) VALUES(DATE_ADD(NOW(), INTERVAL -2 YEAR)); mysql> INSERT INTO SelectPartOfTimestampDemo(ShippingTime) VALUES(DATE_ADD(NOW(), INTERVAL -3 YEAR)); mysql> INSERT INTO SelectPartOfTimestampDemo(ShippingTime) VALUES(DATE_ADD(NOW(), INTERVAL -1 YEAR)); mysql> INSERT INTO SelectPartOfTimestampDemo(ShippingTime) VALUES(DATE_ADD(NOW(), INTERVAL 1 YEAR)); mysql> INSERT INTO SelectPartOfTimestampDemo(ShippingTime) VALUES(DATE_ADD(NOW(), INTERVAL 2 YEAR)); mysql> INSERT INTO SelectPartOfTimestampDemo(ShippingTime) VALUES(DATE_ADD(NOW(), INTERVAL 3 YEAR));
Dữ liệu:
+----+---------------------+ | Id | ShippingTime | +----+---------------------+ | 1 | 2019-02-08 15:03:27 | | 2 | 2017-02-08 15:03:50 | | 3 | 2016-02-08 15:04:03 | | 4 | 2018-02-08 15:04:06 | | 5 | 2020-02-08 15:04:10 | | 6 | 2021-02-08 15:04:24 | | 7 | 2022-02-08 15:04:30 | +----+---------------------+
Trích xuất năm:
mysql> SELECT YEAR(ShippingTime) AS PartOfTimeStamp FROM SelectPartOfTimestampDemo;
Kết quả:
+-----------------+ | PartOfTimeStamp | +-----------------+ | 2019 | | 2017 | | 2016 | | 2018 | | 2020 | | 2021 | | 2022 | +-----------------+
Các hàm trích xuất khác
| Hàm | Kết quả |
|---|---|
| YEAR(date) | Năm (4 chữ số) |
| MONTH(date) | Tháng (1-12) |
| DAY(date) | Ngày (1-31) |
| HOUR(time) | Giờ (0-23) |
| MINUTE(time) | Phút (0-59) |
| SECOND(time) | Giây (0-59) |
| DATE(timestamp) | Chỉ phần ngày |
| TIME(timestamp) | Chỉ phần giờ |