Wie kann man Daten in Orakel-Datenbank unterteilen? [Duplikat]

Jan 23 2021

Ich möchte 2 Daten (aktuelles Datum und Friseurdatum) unterteilen, um das Ergebnis aus der Tabelle zu erhalten und die Daten der letzten 2 Jahre darzustellen. Ich habe folgende SELECT-Anweisung:

SELECT count(c_id) 
  INTO counter 
  FROM RESERVATIONS r
 WHERE r.customer_id = 1 
   AND (Sysdate - r.hairdressing_date) / 365 < 2;

Es ist benutzerdefiniert, aber ich bin mir nicht sicher, ob es sich um einen Teil des Codes '/ 365' handelt.

Wie bekomme ich die benötigten Daten richtig? Könnten Sie die korrekte Implementierung dieser Zeile schreiben?

Antworten

2 ThomasKirchhoff Jan 23 2021 at 03:05

Bitte verwenden Sie die folgende MONTHS_BETWEEN()Funktion:

SELECT MONTHS_BETWEEN(TRUNC(SYSDATE), TO_DATE('22.01.2019', 'DD.MM.YYYY'))/12 
  FROM DUAL;

und kehren Sie zu diesem Fall zurück, wenn Sie Ihren Fall berücksichtigen:

SELECT count(c_id) 
  INTO counter 
  FROM RESERVATIONS r     
 WHERE r.customer_id = 1 
   AND MONTHS_BETWEEN(TRUNC(SYSDATE), hairdressing_date)/12 < 2;