#789

Perkelk senus įrašus į archyvą vienu kartu — be lenktynių

Senų užsakymų archyvavimas dviem komandomis (įterpimas į archyvą, tada šalinimas iš pagrindinės lentelės) yra pažeidžiamas lenktynių: tarp žingsnių kažkas gali įterpti naują sąlygą atitinkančią eilutę arba būsena gali pasikeisti. Viena užklausa su CTE tai išsprendžia atomiškai. Perkelk iš orders į orders_archive visus apmokėtus užsakymus (statusas paid), sukurtus iki 2024 m. sausio 1 d. — iš karto viena komanda, be tarpinės būsenos. Į archyvinę lentelę turi patekti stulpeliai id, status ir amount.

Laukiamo rezultato pavyzdys

Taip atrodo teisingas atsakymas — jo eilučių skaičius yra savitas, jis neprivalo sutapti su schemos lentelėmis.

idamountstatus
1100.00paid
2200.00paid
3150.00paid

Jūsų užklausos rezultatas bus rodomas čia