Tôi đoán rằng bạn đang sử dụng Oracle. Nếu vậy, DATE
kiểu dữ liệu chứa một thành phần thời gian. Điều này là khá khó hiểu. Nhưng bạn có thể làm những gì bạn muốn bằng cách sử dụng TRUNC()
thay vì CAST()
:
SELECT TRUNC(HOLIDAY_DATE), DATE '2011-04-16' --into DAY_COUNT
FROM ATL_JOB_HOLIDAY jh JOIN
ATL_MASTER_JOB mj
ON mj.MASTER_JOB_ID = jh.MASTER_JOB_ID
WHERE TRUNC(HOLIDAY_DATE) = DATE '2011-04-16';
Cũng lưu ý ưu tiên cho ngày chuẩn ANSI và bí danh bảng.