Tìm thủ thuật nhanh hơn với chức năng tìm trong Blog

11/11/09

Tính Toán thời gian giữa hai thời điểm với dateiff

Đôi khi bạn có nhu cầu tính số ngày, số tháng, số quý giữa hai thời kỳ nhằm phục vụ báo cáo.Cụ thể tính tiền trợ cấp hoặc bảo hiểm xã hội!
Mình xin giới thiệu hàm: DateIff( loại, từ ngày, đến ngày)
bạn dùng hàm datediff("d", date1, date2) để tính số ngày
bạn dùng hàm datediff("m", date1, date2) để tính số tháng
bạn dùng hàm datediff("q", date1, date2) để tính số quý ....

Loại ta có:
yyyy Year
q Quarter
m Month
y Day of year
d Day
w Weekday
ww Week
h Hour
n Minute
s Second

sau khi tính duoc số tháng ban dùng dấu chia ngược "\" hoặc dùng hàm roud() kết hợp với lệnh mod để tính ra số năm và số tháng


ví dụ: trên báo cáo BHXH thời gian đóng BHXH cua Nhân viên A là ngày 15 tháng 01 năm 1980 đến ngày 15 tháng 6 năm 1982 là 2 năm 5 tháng ban làm như sau:

datediff("m",#01/15/1980#,#06/15/1982#) --> cho kết quả 29
hoặc
datediff("m", dateserial(1980,01,15), dateserial(1982,06,15)) --> cho kết quả 29

để tìm ra số năm ta có thể lấy 29\12 = 2 hoặc round(29/12,0) = 2
để tinh số tháng ta lấy 29 mod 12 = 5
____________________________________________________________________________________
Thảo luận thêm tại: http://thuthuataccess.co.cc/forum