Dodanie rekordu z datą

Dodanie rekordu z datą
MA
  • Rejestracja: dni
  • Ostatnio: dni
0

mam w tabeli:
pracownik,
operacja,
start_operacji,

Chciałbym chwilę o północy uruchomić zapytanie, które wyciągnie ostatnią operację każdego pracownika i doda kolejny rekord z tą samą operacją i pracownikiem (każdemu pracownikowi), ale z godziną rozpoczęcia 00:00:00 tego dnia.

Przykład
Pracownik1; Operacja1; 2018-03-01 16:38:15

Po zapytaniu

Pracownik1; Operacja1; 2018-03-01 16:38:15
Pracownik1; Operacja1; 2018-03-02 00:00:00

gośćabc
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Szczecin
  • Postów: 500
0

Która baza danych?
Jesteś pewien, że nie wystarczy praca z MERGE?
Mozesz pogooglać o "Scheduled events"

MA
  • Rejestracja: dni
  • Ostatnio: dni
0

Zrobienie joba to nie problem, bardziej interesuje mnie jak może wyglądać konkretne zapytanie do tego problemu. Merge może być, baza obsługuje

gośćabc
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Szczecin
  • Postów: 500
0

Pytasz o zwykły insert do bazy danych?
Jak potrafisz zrobić joba to zwyczajnie dopisz do niego prosty insert.

MA
  • Rejestracja: dni
  • Ostatnio: dni
0

No właśnie dla mnie nawet insert nie jest prosty

CM
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Warszawa
  • Postów: 118
0

W postgresie to będzie jakoś tak:

Kopiuj
with cte as(
	select pracownik, operacja, row_number() over (partition by pracownik order by start_operacji desc) as rank 
	from tabela
)
insert into tabela(pracownik, operacja, start_operacji)
select pracownik, operacja, current_date::timestamp
from cte
where rank = 1;

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.