So sánh ngày từ c trong sql
Bảng dưới đây liệt kê tất cả các hàm quan trọng trong danh sách các hàm xử lý Date trong SQL. Ngoài những hàm quan trong, có nhiều hàm khác được hỗ trợ bởi các RDBMS khác nhau. Danh sách đưa ra dựa trên MySQL RDBMS. Show
No. Mô tả 1 Thêm ngày tháng 2 Thêm thời gian 3 Chuyển đổi từ múi giờ này sang múi giờ khác 4 Trả về ngày hiện tại 5 Tương tự như hàm CURDATE() 6 Tương tự như hàm với CURTIME() 7 Tương tự như hàm với NOW() 8 Trả về thời gian hiện tại 9 Thêm hai ngày 10 Định dạng ngày theo quy định 11 Trừ hai ngày 12 Trả về phần ngày của date hoặc biểu thức datetime 13 Trừ hai ngày 14 Tương tự như DAYOFMONTH() 15 Trả về tên của ngày trong tuần 16 Trả về ngày trong tháng (1-31) 17 Trả về chỉ số weekday của đối số 18 Trả về ngày trong năm (1-366) 19 Trả về một phần của một ngày 20 Chuyển đổi một số ngày cho một ngày 21 Định dạng ngày như timestamp trên UNIX 22 Trả về giờ từ đối số truyền vào 23 Trả về ngày cuối cùng của tháng 24 Tương tự như hàm với NOW() 25 Tương tự như hàm với NOW() 26 Tạo một ngày từ năm và ngày trong năm 27 MAKETIME() 28 Trả về microseconds từ đối số 29 Trả về phút từ đối số 30 Trả về tháng từ ngày được truyền vào 31 Trả về tên của tháng 32 Trả về ngày và giờ hiện tại 33 Thêm một khoảng thời gian cho một tháng một năm 34 Trả về số tháng giữa các khoảng thời gian 35 Trả về quý từ đối số ngày 36 Chuyển đổi giây sang định dạng 'HH: MM: SS' 37 Trả về giá trị giây (0-59) 38 Chuyển đổi một chuỗi thành một ngày 39 Khi được gọi với ba đối số, tương tự như hàm DATE_SUB() 40 Trừ lần 41 Trả về thời gian mà hàm thực thi 42 Định dạng theo thời gian 43 Trả về đối số được chuyển đổi thành giây 44 Trả về phần thời gian từ đối số được truyền vào 45 Trừ đi thời gian 46 Với một đối số duy nhất, hàm này trả về ngày hoặc biểu thức datetime. Với hai đối số, tổng của các đối số 47 Thêm khoảng thời gian vào một biểu thức datetime 48 Loại trừ khoảng thời gian từ biểu thức datetime 49 Trả về đối số ngày được chuyển thành ngày 50 Trả về dấu thời gian UNIX 51 Trả về ngày giờ UTC hiện tại 52 Trả về thời gian UTC hiện tại 53 Trả về ngày tháng hiện tại của UTC 54 Trả về số tuần 55 Trả về chỉ số ngày trong tuần 56 Trả về tuần dương lịch của ngày (1-53) 57 Trả về năm 58 Trả về năm và tuần Nội dung chính ADDDATE (date, interval expr unit), ADDDATE (expr, ngày)ADDDATE(date, interval expr unit) Khi được gọi với dạng INTERVAL của đối số thứ hai, ADDDATE() tương tự như hàm DATE_ADD(). Còn hàm SUBDATE() tương tự như hàm DATE_SUB(). Để biết thông tin về đối số đơn vị INTERVAL, xem hàm DATE_ADD(). Ví dụ: SELECT DATE_ADD('1998-01-02', INTERVAL 31 DAY); Kết quả: +---------+
ADDDATE(expr, days) Khi được gọi với dạng ngày của đối số thứ hai, MySQL xử lý nó như là một số nguyên ngày được thêm vào biểu thức expr. Ví dụ: SELECT ADDDATE('1998-01-02', 31); Kết quả: +---------+
ADDTIME (expr1, expr2)Hàm ADDTIME() trong SQL cộng giá trị expr2 vào expr1 và trả về kết quả. Expr1 là một biểu thức thời gian hoặc datetime, trong khi expr2 là một biểu thức time. Ví dụ: ELECT ADDTIME('1997-12-31 23:59:59.999999','1 1:1:1.000002'); Kết quả +---------+
CONVERT_TZ (dt, from_tz, to_tz)Hàm CONVERT_TZ() trong SQL được sử dụng để chuyển đổi giá trị dt từ từ múi giờ đã cho from_tz thành múi giờ to_tz và trả về kết quả. Hàm này trả về NULL nếu các đối số không hợp lệ. Ví dụ: SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET'); Kết quả: +---------+
Ví dụ: SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00'); Kết quả: +---------+
CURDATE()Hàm CURDATE() trong SQL trả về ngày hiện tại có định dạng 'YYYY-MM-DD' hoặc YYYYMMDD, tùy thuộc vào việc hàm được sử dụng trong ngữ cảnh trong một chuỗi hay một số. Ví dụ: Kết quả: +---------+
0 Ví dụ: Kết quả: +---------+
1 CURRENT_DATE và CURRENT_DATE()CURRENT_DATE và CURRENT_DATE() là những hàm có chức năng tương tự như hàm CURDATE()
CURTIME()Hàm CURTIME() trong SQL trả về thời gian hiện tại dưới dạng giá trị 'HH: MM: SS' hoặc HHMMSS, tùy thuộc vào việc hàm được sử dụng trong ngữ cảnh một chuỗi hay một số. Giá trị được thể hiện trong múi giờ hiện tại. Ví dụ: Kết quả: +---------+
2 Ví dụ: +---------+
3 Kết quả: +---------+
4 CURRENT_TIME và CURRENT_TIME()CURRENT_TIME và CURRENT_TIME() là những hàm có chức năng tương tự như hàm CURTIME().
CURRENT_TIMESTAMP và CURRENT_TIMESTAMP()CURRENT_TIMESTAMP và CURRENT_TIMESTAMP() là những hàm có chức năng tương tự như hàm NOW(). DATE(expr)Hàm DATE() trong SQL trả về phần ngày của date hoặc biểu thức expr. Ví dụ: +---------+
5 Kết quả: +---------+
6
DATEDIFF (expr1, expr2)Hàm DATEDIFF() trong SQL trả về phần ngày của expr1 trừ đi phần ngày của expr2. Cả hai expr1 và expr2 là ngày hoặc các biểu thức ngày và giờ. Chỉ tính phần ngày của các giá trị được sử dụng trong tính toán. Ví dụ: +---------+
7 Kết quả: +---------+
8 DATE_ADD(date,INTERVAL expr unit),Hàm DATE_ADD() và DATE_SUB() trong được sử dụng để tính toán ngày. Tham số date là một giá trị DATETIME hoặc DATE xác định ngày bắt đầu. Tham số expr là một biểu thức xác định giá trị INTERVAL để được thêm vào hoặc trừ từ ngày bắt đầu. Các expr là một chuỗi; Nó có thể bắt đầu với dấu '-' cho các khoảng âm. Một unit là một từ khóa cho biết các đơn vị mà trong đó biểu thức nên được diễn giải. Từ khóa INTERVAL và giá trị unit không phân biệt chữ hoa. Bảng dưới đây cho thấy định dạng dự kiến của đối số expr cho mỗi giá trị unit. Giá trị unit Định dạng dự kiến MICROSECOND MICROSECONDS SECOND SECONDS MINUTE MINUTES HOUR HOURS DAY DAYS WEEK WEEKS MONTH MONTHS QUARTER QUARTERS YEAR YEARS SECOND_MICROSECOND 'SECONDS.MICROSECONDS' MINUTE_MICROSECOND 'MINUTES.MICROSECONDS' MINUTE_SECOND 'MINUTES:SECONDS' HOUR_MICROSECOND 'HOURS.MICROSECONDS' HOUR_SECOND 'HOURS:MINUTES:SECONDS' HOUR_MINUTE 'HOURS:MINUTES' DAY_MICROSECOND 'DAYS.MICROSECONDS' DAY_SECOND 'DAYS HOURS:MINUTES:SECONDS' DAY_MINUTE 'DAYS HOURS:MINUTES' DAY_HOUR 'DAYS HOURS' YEAR_MONTH 'YEARS-MONTHS' Các giá trị QUARTER và WEEK có sẵn từ MySQL 5.0.0. phiên bản. Ví dụ: Ví dụ: +---------+
9 Kết quả: SELECT ADDDATE('1998-01-02', 31); 0 Ví dụ 2: Ví dụ: SELECT ADDDATE('1998-01-02', 31); 1 Kết quả: SELECT ADDDATE('1998-01-02', 31); 2
DATE_FORMAT(date,format)Hàm DATE_FORMAT() trong SQL được sử dụng để định dạng giá trị date theo chuỗi định dạng. Các specifier sau có thể được sử dụng trong chuỗi định dạng. Ký tự '%' là bắt buộc trước các ký tự định nghĩa định dạng. No. Specifier và Mô tả 1 %a Tên ngày trong tuần viết tắt (Sun..Sat) 2 %b Tên tháng viết tắt (Jan.Dec) 3 %c Tháng, số (0..12) 4 %D Ngày tháng có hậu tố tiếng Anh (0th, 1st, 2nd, 3rd,...) 5 %d Ngày trong tháng, số (00..31) 6 %e Ngày trong tháng, số (0..31) 7 %f Microseconds (000000..999999) số 8 %H Giờ (00..23) 9 %h Giờ (01..12) số 10 %I Giờ (01..12) 11 %i Số phút, số (00..59) 12 %j Ngày trong năm (001..366) 13 %k Giờ (0..23) 14 %l Giờ (1..12) 15 %M Tên tháng (January..December) 16 %m Tháng, số (00..12) 17 %p AM hoặc PM 18 %r Thời gian, 12 giờ (hh:mm:ss theo sau là AM hoặc PM) 19 %S Giây (00..59) 20 %s Giây (00..59) 21 %T Thời gian, 24 giờ (hh: mm: ss) 22 %U Tuần (00..53), trong đó chủ nhật là ngày đầu tiên trong tuần 23 %u Tuần (00..53), thứ hai là ngày đầu tiên trong tuần 24 %V Tuần lễ (01..53), chủ nhật là ngày đầu tiên trong tuần; Được sử dụng với %X 25 %v Tuần (01..53), thứ hai là ngày đầu tiên trong tuần; Được sử dụng với %x 26 %W Tên ngày trong tuần (Sunday..Saturday) 27 %w Ngày trong tuần (0=Sunday..6=Saturday) 28 %X Năm cho tuần Chủ Nhật là ngày đầu tiên của tuần, số, bốn chữ số; Được sử dụng với %V 29 %x Năm cho tuần, thứ hai là ngày đầu tiên của tuần, số, bốn chữ số; Được sử dụng với %v 30 %Y Năm với bốn chữ số 31 %y Năm với hai chữ số 32 %% Một chữ .%. ký tự 33 %x Đối với bất kỳ .x. không được liệt kê ở trên Ví dụ: Ví dụ: SELECT ADDDATE('1998-01-02', 31); 3 Kết quả: SELECT ADDDATE('1998-01-02', 31); 4 Ví dụ 2: Ví dụ: SELECT ADDDATE('1998-01-02', 31); 5 Kết quả: SELECT ADDDATE('1998-01-02', 31); 6 DATE_SUB(date,INTERVAL expr unit)Hàm DATE_SUB() trong SQL tương tự như chức năng DATE_ADD().
DAY(day)Hàm DAY() trong SQL tương tự như DAYOFMONTH(). DAYNAME(date)Hàm DAYNAME() trong SQL trả về tên của ngày trong tuần từ date đã cho. Ví dụ: SELECT ADDDATE('1998-01-02', 31); 7 Kết quả: SELECT ADDDATE('1998-01-02', 31); 8
DAYOFMONTH(date)Hàm DAYOFMONTH() trong SQL trả về ngày trong tháng từ date đã cho, trong khoảng từ 0 đến 31. Ví dụ: SELECT ADDDATE('1998-01-02', 31); 9 Kết quả: +---------+
0 DAYOFWEEK(date)Hàm DAYOFWEEK() trong SQL trả về chỉ số tuần trong ngày (1 = Sunday, 2 = Monday, ., 7 = Saturday). Các giá trị chỉ số này tương ứng với tiêu chuẩn ODBC. Ví dụ: +---------+
1 Kết quả: +---------+
2
DAYOFYEAR(date)Hàm DAYOFYEAR() trong SQL trả về ngày trong năm cho ngày, trong khoảng từ 1 đến 366. Ví dụ: +---------+
3 Kết quả: +---------+
4 EXTRACT(unit FROM date)Hàm EXTRACT() trong SQL sử dụng cùng một kiểu unit định dạng như DATE_ADD() hoặc DATE_SUB(), nhưng lấy ra phần từ ngày chứ không phải là thêm hay trừ datetime. Ví dụ 1: +---------+
5 Kết quả: +---------+
6 Ví dụ 2: +---------+
7 Kết quả: +---------+
8
FROM_DAYS(N)Hàm FROM_DAYS() trong SQL được sử dụng để chuyển đổi số N thành một giá trị date cụ thể. Ví dụ: +---------+
9 Kết quả: ELECT ADDTIME('1997-12-31 23:59:59.999999','1 1:1:1.000002'); 0 Lưu ý - Sử dụng FROM_DAYS() cẩn thận với ngày cũ. Nó không được sử dụng với các giá trị mà trước khi sự ra đời của lịch Gregorian (1582). FROM_UNIXTIME(unix_timestamp)
FROM_UNIXTIME(unix_timestamp, format)Hàm FROM_UNIXTIME() trong SQL trả về đại diện của đối số unix_timestamp là một giá trị trong định dạng 'YYYY-MM-DD HH: MM: SS hoặc YYYYMMDHHMMSS, tùy thuộc vào việc hàm được sử dụng trong ngữ cảnh một chuỗi hay một số. Giá trị được thể hiện trong múi giờ hiện tại. Đối số unix_timestamp là một giá trị timestamp nội bộ, được tạo ra bởi hàm UNIX_TIMESTAMP() . Nếu format được đưa ra, kết quả sẽ được định dạng theo chuỗi format, được sử dụng theo cách tương tự như được liệt kê trong mục nhập cho hàm DATE_FORMAT() . Ví dụ: ELECT ADDTIME('1997-12-31 23:59:59.999999','1 1:1:1.000002'); 1 Kết quả: ELECT ADDTIME('1997-12-31 23:59:59.999999','1 1:1:1.000002'); 2 HOUR(time)Hàm HOUR() trong SQL trả về giờ từ time đã cho. Phạm vi của giá trị trả về từ 0 đến 23 cho các giá trị thời gian trong ngày. Tuy nhiên, phạm vi của giá trị TIME thực sự lớn hơn nhiều, vì vậy HOUR có thể trả về giá trị lớn hơn 23. Ví dụ: Kết quả: ELECT ADDTIME('1997-12-31 23:59:59.999999','1 1:1:1.000002'); 3
LAST_DAY(day)Hàm LAST_DAY() trong SQL có tham số truyền vào là giá trị ngày hoặc giá trị datetime và trả về giá trị tương ứng cho ngày cuối cùng của tháng. Trả về NULL nếu đối số không hợp lệ. Ví dụ: ELECT ADDTIME('1997-12-31 23:59:59.999999','1 1:1:1.000002'); 4 Kết quả: ELECT ADDTIME('1997-12-31 23:59:59.999999','1 1:1:1.000002'); 5 LOCALTIME và LOCALTIME()LOCALTIME và LOCALTIME() trong SQL là những hàm có chức năng tương tự hàm NOW().
LOCALTIMESTAMP và LOCALTIMESTAMP()LOCALTIMESTAMP và LOCALTIMESTAMP() trong SQL là những hàm có chức năng tương tự hàm NOW(). MAKEDATE(year, dayofyear)Hàm MAKEDATE() trong SQL trả về một ngày với tham số year và dayofyear. Giá trị dayofyear phải lớn hơn 0 nếu không kết quả sẽ là NULL. Ví dụ: ELECT ADDTIME('1997-12-31 23:59:59.999999','1 1:1:1.000002'); 6 Kết quả: ELECT ADDTIME('1997-12-31 23:59:59.999999','1 1:1:1.000002'); 7
MAKETIME(hour, minute, second)Hàm MAKETIME() trong SQL trả về giá trị time được tính từ các giá trị tham số hour, minute, second. Ví dụ: ELECT ADDTIME('1997-12-31 23:59:59.999999','1 1:1:1.000002'); 8 Kết quả: ELECT ADDTIME('1997-12-31 23:59:59.999999','1 1:1:1.000002'); 9 MICROSECOND(expr)Hàm MICROSECOND() trong SQL trả về microseconds từ biểu thức time hoặc biểu thức thời gian (expr) dưới dạng số trong khoảng từ 0 đến 999999. Ví dụ: +---------+
0 Kết quả: +---------+
1
MINUTE(time)Hàm MINUTE() trong SQL trả về giá trị phút cho từ time đã cho, trong khoảng từ 0 đến 59. Ví dụ: +---------+
2 Kết quả: +---------+
3 MONTH(date)Hàm MONTH() trong SQL trả về tháng từ date đã cho, trong khoảng từ 0 đến 12. Ví dụ: +---------+
4 Kết quả: +---------+
5
MONTHNAME(date)Hàm MONTHNAME() trong SQL trả về tên đầy đủ của tháng từ date đã cho. Ví dụ: +---------+
6 Kết quả: +---------+
7 NOW()Hàm NOW() trong SQL trả về datetime hiện tại dưới dạng một giá trị trong định dạng 'YYYY-MM-DD HH: MM: SS' hoặc YYYYMMDHHMMSS, tùy thuộc vào việc hàm được sử dụng trong một chuỗi hoặc ngữ cảnh số. Giá trị này được thể hiện trong múi giờ hiện tại. Ví dụ: Kết quả: +---------+
8
PERIOD_ADD(P, N)Hàm PERIOD_ADD() trong SQL được sử dụng để thêm N tháng đến một khoảng thời gian P (theo định dạng YYMM hoặc YYYYMM). Trả về giá trị theo định dạng YYYYMM. Lưu ý rằng đối số khoảng P không phải là một giá trị ngày tháng. Ví dụ: +---------+
9 Kết quả: SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET'); 0 PERIOD_DIFF(P1, P2)Hàm PERIOD_DIFF() trong SQL trả về số tháng giữa các khoảng thời gian P1 và P2. Các khoảng thời gian P1 và P2 phải ở định dạng YYMM hoặc YYYYMM. Lưu ý rằng đối số P1 và P2 không phải là giá trị ngày. Ví dụ: SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET'); 1 Kết quả: SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET'); 2
QUARTER(day)Hàm QUARTER() trong SQL trả về quý trong năm từ ngày đã cho, trong khoảng từ 1 đến 4. Ví dụ: SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET'); 3 Kết quả: SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET'); 4 SECOND(time)Hàm SECOND() trong SQL trả về giá trị giây từ time đã cho, trong khoảng từ 0 đến 59. Ví dụ: SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET'); 5 Kết quả: SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET'); 6
SEC_TO_TIME(seconds)Hàm SEC_TO_TIME() trong SQL trả về giá trị được chuyển đổi từ giây đã cho thành giờ, phút và giây có định dạng 'HH: MM: SS' hoặc định dạng HHMMSS, tuỳ thuộc vào việc hàm này được sử dụng trong một chuỗi hoặc ngữ cảnh số. Ví dụ: SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET'); 7 Kết quả: SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET'); 8 STR_TO_DATE(str, format)Hàm STR_TO_DATE() trong SQL là nghịch đảo của hàm DATE_FORMAT(). Tham số bao gồm chuỗi str và một chuỗi định dạng format. Hàm STR_TO_DATE() trả về giá trị DATETIME nếu chuỗi định dạng chứa cả phần DATE và TIME. Nếu khác, nó trả về giá trị DATE hoặc TIME nếu chuỗi chỉ chứa các phần DATE hoặc TIME. Ví dụ: SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET'); 9 Kết quả: +---------+
0
SUBDATE(date, INTERVAL expr unit) và SUBDATE(expr, days)Khi được gọi với dạng INTERVAL của đối số thứ hai. Hàm SUBDATE() trong SQL là một hàm có chức năng giống hàm DATE_SUB(). Ví dụ: +---------+
1 Kết quả: +---------+
2 SUBTIME(expr1, expr2)Hàm SUBTIME() trong SQL trả về giá trị time là hiệu của expr1 trừ expr2. Giá trị expr1 là time hoặc một biểu thức datetime, trong khi giá trị expr2 là một biểu thức time. Ví dụ: +---------+
3 Kết quả: +---------+
4
SYSDATE()Hàm SYSDATE() trong SQL trả về ngày hiện tại và thời gian dưới dạng một giá trị trong định dạng 'YYYY-MM-DD HH: MM: SS' hoặc YYYYMMDHHMMSS, tùy thuộc vào việc hàm được sử dụng trong một chuỗi hoặc trong một ngữ cảnh số. Ví dụ: Kết quả: +---------+
5 TIME(expr)Hàm TIME() trong SQL trả về giá trị thời gian của một time hoặc expr biểu thức datetime đã cho và giá trị trả về là một chuỗi. Ví dụ: +---------+
6 Kết quả: +---------+
7
TIMEDIFF(expr1, expr2)Hàm TIMEDIFF() trong SQL trả về thời gian khác nhau giữa 2 biểu thức thời gian đã cho expr1 và expr2. Các giá trị expr1 và expr2 là các biểu thức time hoặc datetime, nhưng cả hai đều phải có cùng kiểu. Ví dụ: +---------+
8 Kết quả: +---------+
9 TIMESTAMP(expr),TIMESTAMP(expr1, expr2)Hàm TIMESTAMP() trong SQL có 2 dạng. Với một đối số duy nhất, hàm này trả về biểu thức datetime với đối số expr có thể là date hoặc datetime. Với hai đối số, nó cộng thêm thời gian từ biểu thức expr2 đến date hoặc datetime của expr1 và trả về kết quả như một giá trị datetime. Ví dụ: SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00'); 0 Kết quả: SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00'); 1
TIMESTAMPADD(unit, interval, datetime_expr)Hàm TIMESTAMPADD() trong SQL được sử dụng để thêm một khoảng thời gian (interval) vào biểu thức date hoặc datetime datetime_expr. Đơn vị (unit) cho khoảng thời gian được cho bởi các đối số unit. Đối số unit nên là một trong những giá trị sau đây:
Giá trị unit có thể được chỉ định bằng cách sử dụng một trong các từ khoá được hiển thị hoặc với tiền tố của SQL_TSI_. Ví dụ: DAY và SQL_TSI_DAY như vậy cũng là hợp lệ. Ví dụ: SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00'); 2 Kết quả: SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00'); 3 TIMESTAMPDIFF(unit, datetime_expr1, datetime_expr2)Hàm TIMESTAMPDIFF() trong SQL trả về một số nguyên thể hiện sự khác nhau giữa hai biểu thức date hoặc datetime (datetime_expr1 và datetime_expr2). Tham số unit được sử dụng để định nghĩa đơn vị của giá trị được trả về. Các giá trị hợp lệ cho unit giống như các giá trị được liệt kê trong mô tả của hàm TIMESTAMPADD(). Ví dụ: SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00'); 4 Kết quả: SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00'); 5
TIME_FORMAT(time, format)Hàm TIME_FORMAT trong SQL được sử dụng như hàm DATE_FORMAT(), nhưng chuỗi định dạng (format) có thể chỉ chứa định dạng trong giờ, phút và giây. Nếu giá trị time chứa một phần giờ cao hơn 23, thì các định dạng định dạng %H và %k cho một giá trị lớn hơn phạm vi thông thường từ 0 đến 23. Các định dạng giờ khác tạo ra giá trị giờ theo kiểu 12 giờ. Ví dụ: SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00'); 6 Kết quả: SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00'); 7 TIME_TO_SEC(time)Hàm TIME_TO_SEC() trong SQL trả về số giây được chuyển đổi từ đối số time. Ví dụ: SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00'); 8 Kết quả: SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00'); 9
TO_DAYS(date)Hàm TO_DAYS() trong SQL trả về số ngày (số ngày kể từ năm 0) từ date đã cho. Ví dụ: +---------+
0 Kết quả: +---------+
1 UNIX_TIMESTAMP(), UNIX_TIMESTAMP(date)Hàm UNIX_TIMESTAMP() trong SQL có 2 dạng. Nếu được gọi với không có đối số, hàm này trả về số giây theo Unix timestamp (kể từ '1970-01-01 00:00:00' UTC) dưới dạng số nguyên không dấu (unsigned integer). Nếu UNIX_TIMESTAMP() được gọi với đối số date, nó trả về giá trị của đối số là giây (kể từ '1970-01-01 00:00:00' UTC). Đối số date có thể là một chuỗi DATE, một chuỗi DATETIME, TIMESTAMP hoặc một số ở định dạng YYMMDD hoặc YYYYMMDD. Ví dụ 1: Kết quả: +---------+
2 Ví dụ 2: +---------+
3 Kết quả: +---------+
4
UTC_DATE, UTC_DATE()Hàm UTC_DATE() trong SQL trả về ngày giờ UTC hiện tại dưới dạng một giá trị trong định dạng 'YYYY-MM-DD' hoặc YYYYMMDD, tùy thuộc vào việc hàm được sử dụng trong một chuỗi hay ngữ cảnh số. Ví dụ: +---------+
5 Kết quả: +---------+
6 UTC_TIME, UTC_TIME()Hàm UTC_TIME() trong SQL trả về thời gian UTC hiện tại dưới dạng giá trị 'HH: MM: SS' hoặc HHMMSS, tùy thuộc vào việc hàm được sử dụng trong một chuỗi hay ngữ cảnh số. Ví dụ: +---------+
7 Kết quả: +---------+
8
UTC_TIMESTAMP, UTC_TIMESTAMP()Hàm UTC_TIMESTAMP() trong SQL trả về ngày tháng hiện tại của UTC là một giá trị trong định dạng 'YYYY-MM-DD HH: MM: SS' hoặc YYYYMMDDHHMMSS, tùy thuộc vào việc hàm được sử dụng trong một chuỗi hay trong một ngữ cảnh số. Ví dụ: +---------+
9 Kết quả: +---------+
00 WEEK(date, mode)Hàm WEEK() trong SQL trả về số tuần cho ngày tháng. Hình thức hai đối số của WEEK() cho phép bạn xác định liệu tuần bắt đầu vào Sunday hay Monday và giá trị trả về có nằm trong khoảng từ 0 đến 53 hay từ 1 đến 53. Nếu không sử dụng mode, giá trị của biến hệ thống default_week_format được sử dụng. Mode Ngày đầu tuần Phạm vi Tuần 1 là tuần đầu tiên. 0 Sunday 0-53 Với một Chủ Nhật trong năm nay 1 Monday 0-53 Với hơn 3 ngày trong năm nay 2 Sunday 1-53 Với một Chủ Nhật trong năm nay 3 Monday 1-53 Với hơn 3 ngày trong năm nay 4 Sunday 0-53 Với hơn 3 ngày trong năm nay 5 Monday 0-53 Với một thứ Hai trong năm nay 6 Sunday 1-53 Với hơn 3 ngày trong năm nay 7 Monday 1-53 Với một thứ Hai trong năm nay Ví dụ: +---------+
01 Kết quả: +---------+
02
WEEKDAY(date)Hàm WEEKDAY() trong SQL trả về chỉ số ngày trong tuần (0 = Thứ Hai, 1 = Thứ Ba, 6 = Chủ Nhật). Ví dụ: +---------+
03 Kết quả: +---------+
04 WEEKOFYEAR(date)Hàm WEEKOFYEAR() trong SQL trả về chỉ số tuần của date đã cho là một con số trong khoảng từ 1 đến 53. WEEKOFYEAR() là một chức năng tương đương với WEEK(date, mode) với mode = 3. Ví dụ: +---------+
05 Kết quả: +---------+
06
YEAR(date)Hàm YEAR() trong SQL trả về năm từ date đã cho, nó trả về NULL khi date không hợp lệ. Ví dụ: +---------+
07 Kết quả: +---------+
08 YEARWEEK(date), YEARWEEK(date, mode)Hàm YEARWEEK() trong SQL trả về năm và và từ date đã cho. Đối số mode hoạt động như đối số mode trong hàm WEEK(). Năm trong kết quả trả về có thể khác với năm trong đối số date đối với ngày đầu tiên và tuần cuối cùng của năm. Ví dụ 1: Năm trong kết quả trả về giống với năm trong đối số date +---------+
09 Kết quả: +---------+
10 Ví dụ 2: Năm trong kết quả trả về khác với năm trong đối số date +---------+
11 Kết quả: +---------+
12 Lưu ý: Số tuần trả về từ YEARWEEK() khác với giá trị mà WEEK() trả về (0) đối với đối số tùy chọn 0 hoặc 1. Hàm WEEK() trả về tuần trong ngữ cảnh của năm của date đã cho. |