sql >> Database teknologi >  >> RDS >> Mysql

PyMySQL forskellige opdateringer i én forespørgsel?

Din bedste præstation vil være, hvis du kan kode dine "tests" ind i selve SQL-logikken, så du kan koge alt ned til en håndfuld UPDATE-sætninger. Eller i det mindste få lavet så mange som muligt på den måde, så færre rækker skal opdateres individuelt.

For eksempel:

UPDATE tablename set firstname = [some logic]
WHERE [logic that identifies which rows need the firstname updated];

Du beskriver ikke meget om dine tests, så det er svært at være sikker. Men du kan typisk få ret meget logik ind i din WHERE-klausul med lidt arbejde.

En anden mulighed ville være at sætte din logik ind i en lagret procedure. Du vil stadig lave 350.000 opdateringer, men i det mindste "går de ikke alle sammen". Jeg ville dog kun bruge dette som en sidste udvej; forretningslogik bør bevares i applikationslaget, når det er muligt, og lagrede procedurer gør din applikation mindre bærbar.



  1. JSON_VALUE() Funktion i Oracle

  2. Sådan vælger du en enkelt række a 100 millioner x

  3. Ændre på Big Table i RDS Løsning til tabel fuld fejl

  4. MySQL - Sådan opdeles værdier i enkelte strenge ved hjælp af komma