Khi tôi thực hiện truy vấn sau, tôi nhận được các kết quả khác nhau.Tại sao hàm Datediff hiển thị các giá trị khác nhau?
SELECT Datediff(year, 0, Getdate());
Kết quả được 115
Khi tôi sử dụng này, tôi nhận được một kết quả khác:
SELECT Datediff(year, 1900, Getdate());
Kết quả là 110
Trên thực tế trong SQL Server nó sẽ lấy từ 1900-01-01
, nhưng tại sao những giá trị này lại hiển thị các giá trị khác nhau?
nếu bạn thay đổi 1900 đến '1900 bạn sẽ nhận được kết quả tương tự như ví dụ đầu tiên của bạn - '1900' sẽ được truyền nội bộ theo số 1900-01-01 –