Hi,
in einer Tabelle gibt es einen Start- und einen Endzeitpunkt.
Der Endzeitpunkt kann allerdings in der Zukunft liegen, falls die Transaktion noch nicht beendet ist -> dann ist er NULL.
Wenn ich nun alle Transaktionen innerhalb eines Zeitfensters suche, ergibt sich folgendes "unschönes" pseudo Statement:
- x und y sind Start und Ende des zu suchenden Zeitraums als Timestamp
Auf endneu kann ich nicht zugreifen.: In mysql kann ich mir den Inhalt des CASE mit AS merken und an anderen Stellen im Statement verwenden. Irgendwie klappt das mit derby nicht
PS Falls jemand eine bessere Idee hat, wie ich die Datensätze die innerhalb des Zeitraums x und y liegen herausbekomme, wäre das sogar noch besser.
Danke und viele Grüße,
Meisenmann
in einer Tabelle gibt es einen Start- und einen Endzeitpunkt.
Der Endzeitpunkt kann allerdings in der Zukunft liegen, falls die Transaktion noch nicht beendet ist -> dann ist er NULL.
Wenn ich nun alle Transaktionen innerhalb eines Zeitfensters suche, ergibt sich folgendes "unschönes" pseudo Statement:
Code:
SELECT (CASE
WHEN end IS NULL THEN CURRENT_TIMESTAMP
ELSE end END) AS endneu
FROM mytable
WHERE
start BETWEEN x AND y
OR
endneu BETWEEN x AND y
OR
start < x AND end > y
- x und y sind Start und Ende des zu suchenden Zeitraums als Timestamp
Auf endneu kann ich nicht zugreifen.: In mysql kann ich mir den Inhalt des CASE mit AS merken und an anderen Stellen im Statement verwenden. Irgendwie klappt das mit derby nicht
PS Falls jemand eine bessere Idee hat, wie ich die Datensätze die innerhalb des Zeitraums x und y liegen herausbekomme, wäre das sogar noch besser.
Danke und viele Grüße,
Meisenmann