Lösung mit Sequenzer:
CREATE SEQUENCE TRUCK_SEQUENCE MINVALUE 0 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 0 CACHE 20 NOORDER NOCYCLE;
SELECT 'NEXT_CAR',
TO_CHAR(TO_DATE('08.08.2016 10:00', 'dd.mm.yyyy hh24:mi:ss')+1/24/60*30*TRUCK_SEQUENCE.NEXTVAL, 'dd.mm.yyyy hh24:mi:ss')
FROM DUAL;
Nachteile: Wenn Sie vom Sequenzer ziehen, wird dieser Zeitrahmen verloren. Das heißt, wenn Sie zum Beispiel entscheiden, dass Sie Auto 3 nicht um 11:00 Uhr laden (aus der Tabelle löschen), sondern Auto 4 laden möchten (eine weitere Beilage), erhalten Sie 11:30. Es ist ein echtes Feature des Sequenzers.
Lösung max Zeit Tabelle:
WITH LOAD_TIMES AS
(SELECT 'TRUCK1' AS CAR,
TO_DATE('08.08.2016 10:00', 'dd.mm.yyyy hh24:mi:ss') AS TIME
FROM DUAL
)
SELECT 'TRUCK2',
TO_CHAR(MAX(TIME)+1/24/60*30, 'dd.mm.yyyy hh24:mi:ss')
FROM LOAD_TIMES;
Nachteile: Sie abfragen gesamte Tabelle jedes Mal max Zeit zu finden und es dann erhöht.
Gemeinsam für alle Lösungen:
--This is basic offset (date to start with)
TO_DATE('08.08.2016 10:00', 'dd.mm.yyyy hh24:mi:ss')
Willkommen bei SO. Hier findest du etwas über [ask] und wie man ein [mcve] – Aleksej