ich einige Daten aus drei Tabellen wähle mit union
dann würde Ich mag sie nach Datum und Zeitstempel sortieren (absteigend):Orakel: Sortierung nach Datum und Zeitstempel
select reportname as name, convert_to_char(a.date) AS created,
....
from table1
UNION
select reportname as name, convert_to_char(a.date) AS created,
....
from table2
UNION
select reportname as name, convert_to_char(a.date) AS created,
....
from table3
order by created desc;
convert_to_char wird wie folgt umgesetzt:
create or replace function convert_to_char(myDate date)
RETURN varchar IS
BEGIN
return TO_CHAR(cast (myDate as timestamp) at local, 'YYYY-MM-DD HH24:MI:SS TZH:TZM');
END;
das Ergebnis der sortierten Daten ich wie folgt aussieht:
created
------------------
2017-04-12 16:07:07 +02:00
2017-04-13 09:00:01 +02:00
2017-04-13 09:00:40 +02:00
2017-04-12 16:06:17 +02:00
2017-04-12 16:08:37 +02:00
2017-04-12 16:07:31 +02:00
2017-04-13 09:00:25 +02:00
2017-04-13 09:00:25 +02:00
2017-04-12 16:09:07 +02:00
2017-04-12 16:08:20 +02:00
2017-04-12 16:08:06 +02:00
2017-04-12 16:06:48 +02:00
Aber ich erwarte das folgende Sortergebnis:
created
------------------
2017-04-13 09:00:40 +02:00
2017-04-13 09:00:25 +02:00
2017-04-13 09:00:25 +02:00
2017-04-13 09:00:01 +02:00
2017-04-12 16:09:07 +02:00
2017-04-12 16:08:37 +02:00
2017-04-12 16:08:20 +02:00
2017-04-12 16:08:06 +02:00
2017-04-12 16:07:31 +02:00
2017-04-12 16:07:07 +02:00
2017-04-12 16:06:48 +02:00
2017-04-12 16:06:17 +02:00
eine Idee, wie Sie das erwartete Sortierergebnis erhalten?
danke im voraus.
'sortieren nach'? In Oracle? –
Warum nicht 'ORDER BY a.date' verwenden –
Ich habe auf" order by "aktualisiert. sortieren nach war Tippfehler –