Hàm xử lý DATE/TIME trong SQL - Phần 1

Ở bài viết này, Quantrimang xin liệt kê tất cả các hàm quan trọng dùng để xử lý Date/Time trong SQL. Danh sách đưa ra dựa trên MySQL RDBMS.

Các hàm xử lý date/time

Các hàm xử lý date/time

STT HÀM MÔ TẢ
1  ADDDATE() Thêm một khoảng thời gian vào date
2  ADDTIME() Thêm một khoảng thời gian vào time
3  CONVERT_TZ() Chuyển đổi múi giờ
4  CURDATE() Trả về ngày hiện tại
5  CURRENT_DATE() Trả về ngày hiện tại
6  CURRENT_TIME() Trả về thời gian hiện tại
7  CURRENT_TIMESTAMP() Trả về ngày và thời gian hiện tại  
8  CURTIME() Trả về thời gian hiện tại 
9  DATE_ADD() Cộng thời gian
10  DATE_FORMAT() Định dạng giá trị thời gian
11  DATE_SUB() Trừ thời gian
12  DATE() Trả về phần ngày của biểu thức thời gian
13  DATEDIFF() Trả về chênh lệch giữa hai giá trị thời gian
14  DAY() Trả về thứ tự ngày trong tháng (từ 0 đến 31)
15  DAYNAME() Trả về tên của ngày trong tuần 
16  DAYOFMONTH() Trả về thứ tự ngày trong tháng (từ 0 đến 31)
17  DAYOFWEEK() Trả về chỉ số ngày trong tuần (1 = Sunday, 2 = Monday... 7 = Saturday)
18  DAYOFYEAR() Trả về thứ tự ngày trong năm (từ 1 đến 366)
19  EXTRACT Trích giá trị thời gian từ biểu thức ban đầu
20  FROM_DAYS() Chuyển đổi một số thành giá trị ngày
21  FROM_UNIXTIME() Trả về ngày đại diện cho tham số Unixtime ban đầu
22  HOUR() Trả về phần giờ từ biểu thức thời gian
23  LAST_DAY() Trả về giá trị tương ứng cho ngày cuối cùng của tháng
24  LOCALTIME() Trả về ngày giờ hiện tại
25  LOCALTIMESTAMP() Trả về ngày giờ hiện tại 
26  MAKEDATE() Trả về một ngày với các tham số truyền vào
27  MAKETIME() Trả về giá trị thời gian với các tham số truyền vào
28  MICROSECOND() Trả về microsecond từ biểu thức ban đầu
29  MINUTE() Trả về giá trị phút từ biểu thức thời gian
30  MONTH() Trả về giá trị tháng từ biểu thức thời gian
31  MONTHNAME() Trả về tên tháng từ biểu thức thời gian
32  NOW() Trả về ngày giờ hiện tại
33  PERIOD_ADD() Thêm một khoảng thời gian cho tháng trong năm
34  PERIOD_DIFF() Trả về số tháng giữa các khoảng thời gian
35  QUARTER() Trả về giá trị quý từ biểu thức thời gian
36  SEC_TO_TIME() Chuyển đổi số giây sang định dạng 'HH: MM: SS'
37  SECOND() Trả về giá trị giây từ biểu thức thời gian 
38  STR_TO_DATE() Chuyển đổi một chuỗi thành một ngày
39  SUBDATE() Trừ một khoảng thời gian từ date truyền vào
40  SUBTIME() Trừ hai khoảng thời gian
41  SYSDATE() Trả về ngày giờ hiện tại
42  TIME_FORMAT() Định dạng giá trị thời gian
43  TIME_TO_SEC() Trả về số giây được chuyển đổi từ tham số ban đầu
44  TIME() Trả về giá trị thời gian từ biểu thức ban đầu
45  TIMEDIFF() Trả về chênh lệch giữa hai giá trị thời gian
46  TIMESTAMP() Trả về biểu thức datetime
47  TIMESTAMPADD() Cộng khoảng thời gian được chỉ định vào tham số ban đầu
48  TIMESTAMPDIFF() Trả về một số nguyên thể hiện sự chênh lệch thời gian giữa hai biểu thức 
49  TO_DAYS() Trả về số ngày giữa giá trị thời gian date và năm 0 
50  UNIX_TIMESTAMP() Trả về số giây theo Unix timestamp từ biểu thức ban đầu
51  UTC_DATE() Trả về ngày UTC hiện tại 
52  UTC_TIME() Trả về giờ UTC hiện tại 
53  UTC_TIMESTAMP() Trả về ngày giờ UTC hiện tại  
54  WEEKDAY() Trả về chỉ số ngày trong tuần (0 = Thứ Hai, 1 = Thứ Ba... 6 = Chủ Nhật)
55  WEEKOFYEAR() Trả về chỉ số tuần trong năm của biểu thức thời gian
56  YEAR() Trả về năm tương ứng của tham số ban đầu

Các kiểu dữ liệu ngày tháng trong SQL

MySQL đi kèm với các kiểu dữ liệu để lưu trữ giá trị ngày hoặc ngày tháng/thời gian trong cơ sở dữ liệu:

  • DATE – định dạng YYYY-MM-DD
  • DATETIME – định dạng: YYYY-MM-DD HH:MI:SS
  • TIMESTAMP – định dạng: YYYY-MM-DD HH:MI:SS
  • YEAR – định dạng YYYY hoặc YY

Với:

  • Y là năm
  • M là tháng
  • D là ngày
  • H là giờ
  • MM là phút
  • SS là giây

YYYY là năm được lưu dưới dạng bốn chữ số, YY là năm được lưu dưới dạng hai chữ số; MM là lưu tháng dưới dạng hai chữ số, ví dụ tháng 7 sẽ là 07):

Trong phần tiếp theo, Quan trimang sẽ cùng bạn tìm hiểu cách sử dụng tất cả các hàm nói trên với cú pháp và những ví dụ cụ thể, các bạn nhớ theo dõi nhé.

Bài trước: Toán tử đại diện WILDCARD trong SQL

Bài tiếp: Hàm xử lý DATE/TIME trong SQL - Phần 2

Thứ Năm, 22/08/2019 10:34
55 👨 3.332
Bài viết liên quan