Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Różne aktualizacje PyMySQL w jednym zapytaniu?

Najlepszą wydajność uzyskasz, jeśli będziesz w stanie zakodować swoje „testy” w samej logice SQL, dzięki czemu będziesz mógł wszystko sprowadzić do kilku instrukcji UPDATE. Lub przynajmniej zrób w ten sposób jak najwięcej, aby mniej wierszy musiało być aktualizowanych pojedynczo.

Na przykład:

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

Niewiele opisujesz o swoich testach, więc trudno mieć pewność. Ale zazwyczaj możesz wprowadzić sporo logiki do swojej klauzuli WHERE przy odrobinie pracy.

Inną opcją byłoby umieszczenie logiki w procedurze składowanej. Nadal będziesz robić 350 000 aktualizacji, ale przynajmniej nie wszystkie „przechodzą przez drut”. Używałbym tego jednak tylko w ostateczności; Logika biznesowa powinna być przechowywana w warstwie aplikacji, gdy tylko jest to możliwe, a procedury składowane sprawiają, że Twoja aplikacja jest mniej przenośna.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak używać orderby na elemencie połączonym metodą Laravel Eloquent WITH

  2. Hash hasła i solenie – czy to dobra metoda?

  3. Wywoływanie procedury składowanej w procedurze składowanej w MySQL

  4. Dynamicznie zmieniaj nazwę kolumny w instrukcji PDO

  5. A.* nie znajduje się w GROUP BY z lewym sprzężeniem w konstruktorze zapytań laravel