Die vereinfachte Version ist dies: Ich habe eine Tabelle mit zwei Feldern. Das erste Feld, trx
, hat immer einen Wert. Das zweite Feld tstop
kann entweder Null oder ein Zeitstempel sein.Gruppierung wählen Ausgabe von Null-Wert in PostgreSQL
Ich möchte die Ausgabe von der Auswahl so organisieren, dass die erste "Gruppe" von Datensätzen alle tstop von null haben, die verbleibenden Datensätze haben einen Nicht-Null-Wert von tstop
. Jede Gruppe ist geordnet nach trx
desc.
Wie wird das gemacht?
TABLE rx
(
recid serial NOT NULL,
trx timestamp without time zone NOT NULL,
tstop timestamp without time zone
)
Example values:
recid trx tstop
36; "2014-06-10 13:05:16"; "";
113759; "2014-06-10 13:05:16"; "";
33558; "2014-03-31 18:08:15"; "2014-03-31 18:08:15";
12535; "2014-03-31 18:08:15"; "";
660; "2014-03-31 18:05:59"; "";
144209; "2014-03-30 19:21:14"; "";
gewünschte Ausgabe:
recid trx tstop
36; "2014-06-10 13:05:16"; "";
113759; "2014-06-10 13:05:16"; "";
12535; "2014-03-31 18:08:15"; "";
660; "2014-03-31 18:05:59"; "";
144209; "2014-03-30 19:21:14"; "";
33558; "2014-03-31 18:08:15"; "2014-03-31 18:08:15";
Dies wird sich natürlich nicht:
select * from rx order by trx desc;
Arbeiten wie ein Charme. Vielen Dank. –