sql >> Database >  >> RDS >> Oracle

Kan ik datumrijen in kolommen draaien zonder de datums in de spil op te geven? Oracle SQL

In de pallets subquery selecteert u een tekenreeksrepresentatie van datums (volgende vijf of zes dagen). In plaats daarvan moet u als volgt gehele getallen selecteren:

select .... , trunc(a.ord_to_ship_date) - trunc(sysdate) as days_ahead, ....

En dan, in de buitenste selectie,

pivot .... for days_ahead in (1 as today_plus_1, 2 as today_plus_2, 3 as ....)

Merk op dat in pallets je hebt trunc(a.ord_to_ship_date) between sysdate and sysdate + 5 . Dit betekent dat als de zoekopdracht precies om middernacht wordt uitgevoerd, u de verzenddatums krijgt voor vandaag, morgen, ..., vandaag + 5 (in totaal ZES dagen). Als het op een ander tijdstip dan middernacht is, krijgt u slechts vijf dagen - vandaag EXCLUSIEF. Weet niet wat uw werkelijke behoefte is, maar u kunt het vergelijken met TRUNC(sysdate) in plaats van sysdate , en zie precies wat je nodig hebt in de zoekopdracht.




  1. Unieke code op basis van uniek e-mailadres in mysql-tabel?

  2. Mysql - Hoe het isolatieniveau voor de transacties te achterhalen?

  3. Hoe maak je een duidelijke join met MySQL

  4. Wat is de root-fout achter Kan geen databaseverbinding tot stand brengen. Controleer verbindingsreeks, gebruikersnaam en wachtwoord.