Hãy thử Truy vấn bên dưới, chỉ thêm TRUNC()
vào cột ngày của bạn trước khi lấy DISTINCT
của nó.
select distinct(TRUNC(MY_DATE)) from MY_TABLE where extract(year from MY_DATE) = 2014;
Điều này là do yếu tố thời gian trong dữ liệu cột của bạn không giống nhau.
TRUNC()
sẽ vô hiệu hóa yếu tố thời gian, chỉ giữ lại ngày
Truy vấn sẽ thực sự tiết lộ nó. TO_CHAR()
để xuất ra ngày được lưu ở định dạng được chỉ định.
select TO_CHAR(MY_DATE,'MM-DD-YYYY HH24:MI:SS') from MY_TABLE where extract(year from MY_DATE) = 2014;
Tìm hiểu thêm về TRUNC
từ Tài liệu Oracle