Holen Sie sich die Anzahl der Tage zwischen zwei Datumsangaben in Oracle, inclusive der Termine
Ich will Gesamtzahl der Tage zwischen zwei Daten zur Verfügung gestellt. Ich habe versucht, die folgenden Abfrage, aber nicht die genaue Verschieden; das Letzte Datum ist nicht im Lieferumfang enthalten.
select (to_date ('15-06-13','dd-MM-yyyy') - to_date('01-02-12','dd-MM-yyyy'))
from dual
Dieser zurückkehren sollte, 501 Tage, aber es ist wieder in 500 Tagen statt. Wenn ich auf add +1 nach der Berechnung, dann bin ich immer das richtige Ergebnis.
Muss ich wirklich brauchen, um +1 oder gibt es einen alternativen Ansatz, um das tatsächliche Ergebnis?
- Es ist die Rückkehr der 500 Tage, weil das ist der Unterschied :-). Wenn Sie möchten, dass Sie um 1 mehr als die Differenz, dann sollten Sie hinzufügen, 1, ja.
- Ich würde sagen, es ist nicht das hinzufügen von end-Datum (d.h. 15-06-13) oder start-Datum (01-02-12). Ich möchte nicht noch einen Tag. Wenden Sie sich mit diesem link timeanddate.com/date/...
- Der link sagt "end-Datum in die Berechnung (1 Tag Hinzugefügt)"; es ist explizit sagen Sie, dass 1 Tag aufgenommen werden. Es ist einfach nicht das default-Verhalten Subtraktion zu tun, was Sie Fragen, 10 - 4 6, nicht 5. Wenn Sie möchten, ändern Sie die Standard-Verhalten müssen Sie dies manuell tun.
Du musst angemeldet sein, um einen Kommentar abzugeben.
In Oracle der Subtraktion von zwei Datumsangaben gibt die Anzahl der Tage zwischen zwei Datumsangaben.
Ein
minus
operator arbeitet in der gleichen Weise wie für zahlen:Wenn
last number
oderlast date
zu können, müssen Sie 1: