Formular:
Aufgabe: id(bigint) name(varchar). Aufgabendetails speichern
Jobs: id(varchar(UUID)) task_id(bigint(class ID)), staus >(varchar(50)), created_time(timestamp). Details zur Aufgabenausführung speichern
Mögliche Werte für den Status sind FAIL/COMPLETED/INTERRUPTED
Was ich erreichen möchte ist Holen Sie sich alle aktuellen Werte für jede Aufgabe aus der Jobtabelle
Wenn die Aufgabe keinen Job enthält, ist der Rückgabestatus null
SELECT p.id, j.status FROM tas p inner JOIN job j ON j.task_id = p.id inner JOIN job j1 ON j.task_id = j1.task_id and j.create_time > j1.create_time;
对于支持
ROW_NUMBER()
的 SQL 版本,您可以这样做:否则,只需使用 cte 或子查询。