Hi,
ich habe folgendes Problem: ich möchte die Zeit zwischen zwei Daten in Minuten bekommen. Dazu mache ich folgendes: SELECT (endtime-starttime)*1440
Als Ergebnis bekomme ich folgendes:
+000000720 00:00:00.000000000
Die 720 sind die Minuten, aber wie komme ich daran heran, wenn ich sie einfach als Zahl haben will? Und zwar immer, egal ob es ein-, zwei- oder mehrstellige Minutenbeträge sind?
Vielen Dank schon mal für die Antworten,
Christiane
Hallo Christiane,
versuchs mal mit
SELECT round((endtime-starttime)\*1440, 5) from dual;
„5“ ist dabei die Anzahl der Nachkommastellen.
Gruß, muzel
Klappt leider auch nicht:
ORA-00932: inconsistent datatypes: expected NUMBER got INTERVAL
Versuch es mal mit:
( to_date(to_char(endtime,‚ddmmyyyy hh24:mi‘),‚ddmmyyyy hh24:mi‘)-
to_date(to_char(starttime,‚ddmmyyyy hh24:mi‘), ‚ddmmyyyy hh24:mi‘)
) * 1440
Das ist dann gleich auf Minuten gerundet, da in den beiden Datumsmasken die Sekunden fehlen. Kann man auch dazunehmen, falls Bruchteile von Minuten ebenfalls erfasst werden sollen.