4.1. Hàm thời gian 4.1.1. ADD_SECOND Thêm một khoảng thời gian (tính bằng giây) vào một trường dữ liệu ngày tháng. Cú pháp: ADD_SECOND (truong_du_lieu_thoi_gian DATETIME , gia tri INT ) => DATETIME · truong_du_lieu_thoi_gian : Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. · gia_tri: Số giây cần thêm. Ví dụ: SELECT ADD_SECOND(’15-08-2019 10:01:30’,30) -- 15-08-2019 10:02:00 4.1.2. ADD_MINUTE Thêm một khoảng thời gian (tính bằng phút) vào một trường dữ liệu ngày tháng. Cú pháp: ADD_MINUTE (truong_du_lieu_thoi_gian DATETIME, gia tri INT) => DATETIME · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. · gia_tri: Số phút cần thêm. Ví dụ: SELECT ADD_MINUTE(’15-08-2019 10:01:30’,30) 4.1.3. ADD_HOUR Thêm một khoảng thời gian (tính bằng giờ) vào một trường dữ liệu ngày tháng. Cú pháp: ADD_HOUR (truong_du_lieu_thoi_gian DATETIME, gia tri INT) => DATETIME · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. · gia_tri: Số giờ cần thêm. Ví dụ: SELECT ADD_HOUR(’15-08-2019 10:01:30’,5) -- 15-08-2019 15:01:30 4.1.4. ADD_DAY Thêm một khoảng thời gian (tính bằng ngày) vào một trường dữ liệu ngày tháng. Cú pháp: ADD_DAY (truong_du_lieu_thoi_gian DATETIME, gia tri INT) => DATETIME · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. · gia_tri: Số ngày cần thêm. Ví dụ: SELECT ADD_DAY(’15-08-2019 10:01:30’,30) -- 15-08-2019 10:01:30 4.1.5. ADD_WEAK Thêm một khoảng thời gian (tính bằng tuần) vào một trường dữ liệu ngày tháng. Cú pháp: ADD_WEAK (truong_du_lieu_thoi_gian DATETIME, gia tri INT) => DATETIME · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. · gia_tri: Số tuần cần thêm. Ví dụ: SELECT ADD_WEAK(’15-08-2019 10:01:30’,30) -- 15-08-2019 10:02:00 4.1.6. ADD_MONTH Thêm một khoảng thời gian (tính bằng tháng) vào một trường dữ liệu ngày tháng. Cú pháp: ADD_MONTH (truong_du_lieu_thoi_gian DATETIME, gia tri INT) => DATETIME · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. · gia_tri: Số tháng cần thêm. Ví dụ: SELECT ADD_MONTH(’15-08-2019 10:01:30’,6) -- 15-12-2019 10:01:30 4.1.7. ADD_QUARTER Thêm một khoảng thời gian (tính bằng quý) vào một trường dữ liệu ngày tháng. Cú pháp: ADD_QUARTER (truong_du_lieu_thoi_gian DATETIME, gia_tri INT) => DATETIME · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. · gia_tri: Số quý cần thêm. Ví dụ: SELECT ADD_QUARTER(’15-08-2019 10:01:30’,1) -- 15-11-2019 10:01:30 4.1.8. ADD_YEAR Thêm một khoảng thời gian (tính bằng năm) vào một trường dữ liệu ngày tháng. Cú pháp: ADD_YEAR (truong_du_lieu_thoi_gian DATETIME, gia tri INT) => DATETIME · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. · gia_tri: Số năm cần thêm. Ví dụ: SELECT ADD_YEAR(’15-08-2019 10:01:30’,5) -- 15-08-2024 10:01:30 4.1.9. SECOND Trả về giá trị giây(từ 0 -59) trong trường dữ liệu thời gian. Cú pháp: SECOND (truong_du_lieu_thoi_gian DATETIME) => INT · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT SECOND(’15-08-2019 10:01:30’) -- 30 4.1.10. MINUTE Trả về giá trị phút (từ 0 -59) trong trường dữ liệu thời gian. Cú pháp: MINUTE (truong_du_lieu_thoi_gian DATETIME) => INT · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT MINUTE(’15-08-2019 10:01:30’) -- 1 4.1.11. HOUR Trả về giá trị giờ (từ 0- 23) trong trường dữ liệu thời gian. Cú pháp: HOUR (truong_du_lieu_thoi_gian DATETIME) => INT · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT HOUR(’15-08-2019 10:01:30’) -- 10 4.1.12. DAY Trả về giá trị ngày (từ 1- 31) trong trường dữ liệu thời gian. Cú pháp: DAY (truong_du_lieu_thoi_gian DATETIME) => INT · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT DAY(’15-08-2019 10:01:30’) -- 15 4.1.13. MONTH Trả về giá trị tháng (từ 1- 12) trong trường dữ liệu thời gian. Cú pháp: MONTH (truong_du_lieu_thoi_gian DATETIME) => INT · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT SECOND(’15-08-2019 10:01:30’) -- 8 4.1.14. QUARTER Trả về giá trị quý (từ 1- 4) trong trường dữ liệu thời gian. Cú pháp: QUARTER (truong_du_lieu_thoi_gian DATETIME) => INT · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT QUARTER(’15-08-2019 10:01:30’) -- 3 4.1.15. YEAR Trả về giá trị năm trong trường dữ liệu thời gian. Cú pháp: YEAR (truong_du_lieu_thoi_gian DATETIME) => INT · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT YEAR(’15-08-2019 10:01:30’) -- 2019 4.1.16. LASTDAY Trả về ngày cuối cùng trong tháng với trường dữ liệu thời gian. Cú pháp: LASTDAY (truong_du_lieu_thoi_gian DATETIME) => DATETIME · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT LASTDAY(’15-08-2019 10:01:30’) -- 31-08-2019 10:01:30 4.1.17. TRUNC_SECOND Trả về giá trị thời gian với độ chính xác được tính theo giây. Cú pháp: TRUNC_SECOND (truong_du_lieu_thoi_gian DATETIME)   => INT · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT TRUNC_SECOND(’15-08-2019 10:01:30’) -- 15-08-2019 10:01:30 4.1.18. TRUNC_MINUTE Trả về giá trị thời gian với độ chính xác được tính theo phút. Cú pháp:   TRUNC_ MINUTE (truong_du_lieu_thoi_gian)   => DATETIME · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT TRUNC_ MINUTE(’15-08-2019 10:01:30’) -- 15-08-2019 10:01:00 4.1.19. TRUNC_HOUR Trả về giá trị thời gian với độ chính xác được tính theo giờ. Cú pháp:   TRUNC_HOUR (truong_du_lieu_thoi_gian DATETIME)   => DATETIME · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT TRUNC_HOUR(’15-08-2019 10:01:30’) -- 15-08-2019 10:00:00 4.1.20. TRUNC_DAY Trả về giá trị thời gian với độ chính xác được tính theo ngày. Cú pháp:   TRUNC_DAY (truong_du_lieu_thoi_gian DATETIME)   => DATETIME · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT TRUNC_DAY (’15-08-2019 10:01:30’) -- 15-08-2019 00:00:00 4.1.21. TRUNC_WEEK Trả về giá trị thời gian với độ chính xác được tính theo tuần. Cú pháp:   TRUNC_WEEK (truong_du_lieu_thoi_gian DATETIME)   => DATETIME ·         truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT TRUNC_WEEK(’15-08-2019 10:01:30’) -- 04-08-2019 00:00:00 4.1.22. TRUNC_MONTH Trả về giá trị thời gian với độ chính xác được tính theo tháng. Cú pháp:   TRUNC_MONTH (truong_du_lieu_thoi_gian DATETIME)   => DATETIME ·         truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT TRUNC_MONTH(’15-08-2019 10:01:30’) -- 01-08-2019 00:00:00 4.1.23.  TRUNC_QUARTER Trả về giá trị thời gian với độ chính xác được tính theo quý. Cú pháp:   TRUNC_QUARTER (truong_du_lieu_thoi_gian DATETIME)   =>   DATETIME · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT TRUNC_QUARTER(’15-08-2019 10:01:30’) -- 01-07-2019 00:00:00 4.1.24. TRUNC_YEAR Trả về giá trị thời gian với độ chính xác được tính theo năm. Cú pháp:   TRUNC_YEAR (truong_du_lieu_thoi_gian DATETIME)   => DATETIME · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT TRUNC_YEAR(’15-08-2019 10:01:30’) -- 01-01-2019 00:00:00 4.1.25. DOM Trả về thứ tự ngày trong tháng từ một biểu thức thời gian. Cú pháp:   DOM (truong_du_lieu_thoi_gian DATETIME) => INT · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT DOM(’15-08-2019 10:01:30’) -- 15 4.1.26. DOW Trả về thứ tự ngày trong tuần từ một biểu thức thời gian. Cú pháp: DOW (truong_du_lieu_thoi_gian DATETIME) => INT · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. SELECT DOW(’15-08-2019 10:01:30’) -- 4(15-08-2019 là thứ 5, 4 là thứ tự của thứ 5 trong tuần) 4.1.27. DOY Trả về thứ tự ngày trong năm từ một biểu thức thời gian. Cú pháp: DOY (truong_du_lieu_thoi_gian DATETIME) => INT · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. SELECT DOY(’15-08-2019 10:01:30’) -- 227(Năm 2019 có 365 ngày, 15-08-2019 là ngày thứ 227) 4.1.28. WOY Trả về thứ tự tuần trong năm từ một biểu thức thời gian. Cú pháp: WOY (truong_du_lieu_thoi_gian DATETIME) => INT · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. SELECT WOY(’15-08-2019 10:01:30’) -- 33(Một năm có 54 tuần, ngày 15-08-2019 là tuần thứ 33 trong năm) 4.1.29. YWEEK Trả về thứ tự tuần trong năm từ một biểu thức thời gian. Cú pháp: YWEEK (truong_du_lieu_thoi_gian DATETIME) => INT · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT YWEEK(’15-08-2019 10:01:30’) -- 33 4.1.30. EPOCH Tính số giây đã trôi qua từ một mốc dữ liệu thời gian so với ngày 1 tháng 1 năm 1970 lúc 00:00:00 giờ UTC. Cú pháp: EPOCH (truong_du_lieu_thoi_gian DATETIME)   => BIGINT · truong_du_lieu_thoi_gian: Biểu thức hoặc cột trả về kiểu dữ liệu thời gian/ngày tháng. Ví dụ: SELECT EPOCH(’24/06/2024 10:01:30’) -- 1719223290 SELECT EPOCH(’01/01/1970 00:00:00’) -- 0