sql >> Database >  >> RDS >> Oracle

Oracle - Gegevens van het afgelopen jaar ophalen (Dynamisch)

U mag sysdate - interval '1' year . gebruiken om de datum van vandaag een jaar geleden weer te geven:

SELECT userID, COUNT(userID) AS count
FROM BookingTable 
WHERE Timebooked BETWEEN SYSDATE - INTERVAL '1' year AND SYSDATE
GROUP BY userID
HAVING COUNT(userID) > 2

Zoals @Wernfried hieronder terecht opmerkte, zou het bovenstaande op 29 februari in een schrikkeljaar mislukken. Gebruik in plaats daarvan deze tijdelijke oplossing:

WHERE Timebooked BETWEEN ADD_MONTHS(SYSDATE, -12) AND SYSDATE



  1. Opgeslagen procedure die gegevens naar csv-bestanden exporteert, wordt alleen naar één bestand geëxporteerd

  2. Hoe kan ik programmatisch verbinding maken met een externe databaseserver waarvoor een SSH-tunnel nodig is?

  3. psql:FATAL:te veel connecties voor rol

  4. PHP/MySQL kritieke sectie