Trong pallets
truy vấn con bạn chọn đại diện chuỗi ngày (năm hoặc sáu ngày tới). Thay vì điều đó, bạn nên chọn các số nguyên, như sau:
select .... , trunc(a.ord_to_ship_date) - trunc(sysdate) as days_ahead, ....
Và sau đó, trong lựa chọn bên ngoài,
pivot .... for days_ahead in (1 as today_plus_1, 2 as today_plus_2, 3 as ....)
Lưu ý rằng trong pallets
bạn có trunc(a.ord_to_ship_date) between sysdate and sysdate + 5
. Điều này có nghĩa là nếu truy vấn được chạy chính xác vào lúc nửa đêm, bạn sẽ nhận được ngày giao hàng cho hôm nay, ngày mai, ..., hôm nay + 5 (tổng cộng SIX ngày). Nếu đó là bất kỳ lúc nào ngoài nửa đêm, bạn sẽ chỉ nhận được năm ngày - NGOẠI TRỪ hôm nay. Không chắc yêu cầu thực tế của bạn là gì, nhưng bạn có thể muốn so sánh với TRUNC(sysdate)
thay vì sysdate
và xem chính xác những gì bạn cần trong truy vấn.