Hàm DATE trong SQL để xử lý dữ liệu thời gian

Đăng lúc 18:47 11.09.2024

Để xử lý và truy vấn dữ liệu ngày tháng và thời gian, bạn sẽ cần làm việc với các kiểu dữ liệu date/time trong SQL. Nếu bạn mới tìm hiểu về SQL và đang gặp khó khăn khi thao tác với kiểu định dạng ngày tháng, thì hãy tìm hiểu ngay hàm DATE trong SQL cùng HocVienDaoTao.Com bạn nhé.

 

Khám phá các hàm DATE trong SQL

Trong quá trình xử lý dữ liệu liên quan đến ngày tháng, bạn có thể gặp phải khó khăn như không chèn được dữ liệu ngày tháng vào bảng vì sai định dạng ngày tháng. Hay bạn muốn trích xuất dữ liệu ngày tháng theo định dạng mong muốn từ cơ sở dữ liệu. 

hàm DATE trong SQL

Để làm được điều đó, hãy xem các hàm xử lý ngày tháng sau trong SQL nhé.

Hàm

Mô tả

Ví dụ

ADDDATE() Cộng thêm số ngày vào một ngày nhất định.

SELECT ADDDATE('2024-09-01', INTERVAL 5 DAY); 

=> '2024-09-06'

ADDTIME() Cộng thêm thời gian (giờ, phút, giây) vào một giá trị thời gian.

SELECT ADDTIME('12:00:00', '02:30:00'); 

=> '14:30:00'

CURDATE() Lấy ngày hiện tại (không có thời gian).

SELECT CURDATE(); 

=> '2024-09-10'

CURRENT_DATE() Tương tự CURDATE(), trả về ngày hiện tại.

SELECT CURRENT_DATE(); 

=> '2024-09-10'

CONVERT_TZ() Chuyển đổi múi giờ cho một giá trị thời gian.

SELECT CONVERT_TZ('2024-09-01 12:00:00', 'UTC', 'Asia/Ho_Chi_Minh'); 

=> '2024-09-01 19:00:00'

CURRENT_TIME() Trả về thời gian hiện tại (không có ngày).

SELECT CURRENT_TIME(); 

=> '14:30:00'

CURRENT_TIMESTAMP() Trả về ngày và giờ hiện tại.

SELECT CURRENT_TIMESTAMP(); 

=> '2024-09-10 14:30:00'

CURTIME() Trả về thời gian hiện tại (giống CURRENT_TIME()).

SELECT CURTIME(); 

=> '14:30:00'

DATE() Trích xuất phần ngày từ một giá trị ngày giờ.

SELECT DATE('2024-09-10 14:30:00'); 

=> '2024-09-10'

DATEDIFF() Tính số ngày giữa hai ngày.

SELECT DATEDIFF('2024-09-10', '2024-09-01'); 

=> 9

DAY() Trả về ngày trong tháng từ một giá trị ngày.

SELECT DAY('2024-09-10'); 

=> 10

DATE_ADD() Thêm một khoảng thời gian vào ngày.

SELECT DATE_ADD('2024-09-01', INTERVAL 5 DAY); 

=> '2024-09-06'

DATE_FORMAT() Định dạng ngày theo mẫu. SELECT DATE_FORMAT('2024-09-10', '%d-%m-%Y'); => '10-09-2024'
DATE_SUB() hàm trừ ngày tháng trong SQL dùng để trừ một khoảng thời gian từ ngày bất kỳ.

SELECT DATE_SUB('2024-09-10', INTERVAL 5 DAY); 

=> '2024-09-05'

DAYNAME() Trả về tên ngày trong tuần từ một giá trị ngày.

SELECT DAYNAME('2024-09-10'); 

=> 'Tuesday'

DAYOFMONTH() Trả về ngày trong tháng (1-31).

SELECT DAYOFMONTH('2024-09-01'); 

=> Hàm sẽ lấy ngày đầu tháng trong SQL là ngày 01.

DAYOFWEEK() Trả về số ngày trong tuần (1 = Chủ Nhật, 7 = Thứ Bảy).

SELECT DAYOFWEEK('2024-09-10'); 

=> 3

DAYOFYEAR() Trả về số ngày trong năm (1-366).

SELECT DAYOFYEAR('2024-09-10'); 

=> 254

EXTRACT() Trích xuất một phần cụ thể của ngày giờ (như ngày, tháng, năm).

SELECT EXTRACT(YEAR FROM '2024-09-10'); 

=> 2024

FROM_DAYS() Chuyển đổi số ngày thành ngày (tính từ năm 0).

SELECT FROM_DAYS(738000); 

=> '2023-10-03'

FROM_UNIXTIME() Chuyển đổi UNIX timestamp thành ngày giờ.

SELECT FROM_UNIXTIME(1672531199); 

=> '2023-01-01 00:59:59'

HOUR() Trả về giờ từ một giá trị thời gian.

SELECT HOUR('14:30:00'); 

=> 14

LAST_DAY() Trả về ngày cuối cùng của tháng từ một ngày.

SELECT LAST_DAY('2024-09-10'); 

=> '2024-09-30'

LOCALTIMESTAMP() Trả về ngày và giờ hiện tại (giống CURRENT_TIMESTAMP()).

SELECT LOCALTIMESTAMP(); 

=> '2024-09-10 14:30:00'

LOCALTIME() Trả về thời gian hiện tại (giống CURRENT_TIME()).

SELECT LOCALTIME(); 

=> '14:30:00'

MAKEDATE() Tạo ngày từ năm và số ngày trong năm.

SELECT MAKEDATE(2024, 100); 

=> '2024-04-09'

MAKETIME() Tạo thời gian từ giờ, phút và giây.

SELECT MAKETIME(14, 30, 0); 

=> '14:30:00'

NOW() Trả về ngày giờ hiện tại.

SELECT NOW();

=> '2024-09-10 14:30:00'

MICROSECOND() Trả về microsecond từ một giá trị thời gian.

SELECT MICROSECOND('14:30:00.123456'); 

=> 123456

MINUTE() Trả về phút từ một giá trị thời gian.

SELECT MINUTE('14:30:00'); 

=> 30

MONTH() Trả về tháng từ một giá trị ngày.

SELECT MONTH('2024-09-10'); 

=> 9

MONTHNAME() Trả về tên tháng từ một giá trị ngày.

SELECT MONTHNAME('2024-09-10'); 

=> 'September'

PERIOD_DIFF() Tính khoảng cách giữa hai kỳ tháng.

SELECT PERIOD_DIFF(202409, 202401); 

=> 8

PERIOD_ADD() Thêm số tháng vào một kỳ.

SELECT PERIOD_ADD(202401, 6); 

=> 202407

QUARTER() Trả về quý của một ngày (1-4).

SELECT QUARTER('2024-09-10'); 

=> 3

SECOND() Trả về giây từ một giá trị thời gian.

SELECT SECOND('14:30:45'); 

=> 45

SEC_TO_TIME() Chuyển đổi giây thành định dạng thời gian.

SELECT SEC_TO_TIME(3661); 

=> '01:01:01'

STR_TO_DATE() Chuyển đổi chuỗi thành ngày theo định dạng.

SELECT STR_TO_DATE('10-09-2024', '%d-%m-%Y'); 

=> '2024-09-10'

SUBDATE()

Trừ số ngày từ một ngày nhất định.


 

SELECT SUBDATE('2024-09-10', INTERVAL 5 DAY); 

=> '2024-09-05'

SUBTIME() Trừ thời gian từ một giá trị thời gian. SELECT SUBTIME('14:30:00', '02:30:00'); => '12:00:00'
SYSDATE() Trả về ngày giờ hiện tại (tại thời điểm thực thi truy vấn).

SELECT SYSDATE(); 

=> '2024-09-10 14:30:00'

TIME() Trả về phần thời gian của một giá trị ngày giờ.

SELECT TIME('2024-09-10 14:30:00'); 

=> '14:30:00'

TIMEDIFF() Tính chênh lệch thời gian giữa hai thời điểm.

SELECT TIMEDIFF('14:30:00', '12:00:00'); 

=> '02:30:00'

TIME_FORMAT() Định dạng lại thời gian.

SELECT TIME_FORMAT('14:30:00', '%h:%i %p'); 

=> '02:30 PM'


 

 

Kết luận

Trên đây là hướng dẫn về các hàm date trong SQL để xử lý dữ liệu về thời gian. Hy vọng nó sẽ giúp ích cho bạn trong việc truy vấn dữ liệu của mình. Hãy áp dụng ngay vào công việc để thực hành hiệu quả hơn nha. Chúc bạn thành công!

 
 

 
==***==

Khoá học: Quản trị Chiến lược Dành cho các Lãnh đạo Doanh nghiệp
Nhấn vào đây để bắt đầu khóa học

Khóa học: Trở thành chuyên gia Bảo mật và tấn công ANM- Hacker mũ trắng
Nhấn vào đây để bắt đầu khóa học

Chuyên gia phân tích, tự động hóa Web iMacros
Nhấn vào đây để bắt đầu khóa học

Xây dựng ứng dụng tự động hóa AutoIT
Nhấn vào đây để bắt đầu khóa học

Khóa đào tạo Hacker và Marketing Facebook từ A - Z
Nhấn vào đây để bắt đầu khóa học

Khóa học: Phân tích và trực quan hóa dữ liệu với Power BI
Nhấn vào đây để bắt đầu khóa học

Khóa học đào tạo Marketing Facebook thông minh
Nhấn vào đây để bắt đầu khóa học

Lập trình Visual Foxpro 9 - Dành cho nhà quản lý và kế toán
Nhấn vào đây để bắt đầu khóa học

Làm chủ xây dựng Game chuyên nghiệp
Nhấn vào đây để bắt đầu khóa học

Trở thành chuyên gia Marketing Facebook thông minh
Nhấn vào đây để bắt đầu khóa học

Kỹ sảo Điện ảnh đỉnh cao với khóa học After Effect
Nhấn vào đây để bắt đầu khóa học

Trở thành chuyên gia Vẽ Đẳng Cấp với khóa học AI
Nhấn vào đây để bắt đầu khóa học

Làm Chủ thiết kế ảnh với Photoshop CC
Nhấn vào đây để bắt đầu khóa học

Dựng Phim Siêu đẳng với Adobe Premiere
Nhấn vào đây để bắt đầu khóa học

Khóa dựng phần mềm quản lý dành cho nhà Quản lý và Kế toán bằng MS ACCESS
Nhấn vào đây để bắt đầu khóa học

Khóa học Machine Learning cơ bản-Khoa học dữ liệu - AI
Nhấn vào đây để bắt đầu khóa học

Khóa học Đào tạo sử dụng Excel Chuyên nghiệp & ứng dụng
Nhấn vào đây để bắt đầu khóa học

Khóa học sử dụng PowerPoint Chuyên nghiệp & ứng dụng
Nhấn vào đây để bắt đầu khóa học

Khóa học xây dựng và quản trị hệ thống đào tạo trực tuyến
Nhấn vào đây để bắt đầu khóa học

Đóng góp nội dung

Gửi ý kiến cho ban biên tập
Gửi thông tin

Thông tin

ĐĂNG KÝ/LIÊN HỆ: