Vấn đề
Một ngày đẹp trời nọ, có bài toán tính số tháng giữa 2 ngày tháng cho trước. Mình hớn hở tự tin trong sql server có datediff by month có thể giảu quyết được tất. Nhưng không phải như vậyBài toán 1
Tính số tháng giữa 2 ngày, nhưng khác tháng.
Ở hình trên mình lấy ví dụ 1 là tính tháng từ ngày 1/1/2016 cho tới hết năm là ngày 31/12/2016 kết quả khi mình xài DATEDIFF là 11
Và ví dụ 2 mình tính số tháng từ ngày 15 tháng 3 năm 2015 tới ngày 14 tháng 4 năm 2016 thì kết quả là 12.
SELECT DATEDIFF(DAY,'2016/1/1', '2016/12/31'), DATEDIFF(MONTH,'2016/3/15', '2017/3/14')
Mặc dù nếu tính theo ngày thì sẽ cho ra cùng một kết quả là 356 ngày
Thế vấn đề đây là gì, phải chăng là function datediff theo tháng bị sai.
(còn tiếp...)
Để lại bình luận cho trang này