PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Aktualizacja wielu rekordów w jednej transakcji ActiveRecord w Rails

Załóżmy, że wiesz, że chcesz ustawić elementy o identyfikatorach 1, 2 i 3 tak, aby miały wyniki 2, 8 i 64 (w przeciwieństwie do liczb losowych), możesz:

UPDATE 
  things AS t
SET
  score = c.score
FROM 
  (values
    (1, 2),
    (2, 30),
    (4, 50)
  ) as c(id, score) 
 where c.id = t.id;

Więc w Railsach użyjesz ActiveRecord::Base.connection#execute aby wykonać blok podobny do powyższego, ale z poprawną interpolacją ciągu wartości.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Powolne zapytanie z lewym sprzężeniem zewnętrznym i warunkiem zerowym

  2. Zmiana klucza podstawowego na złożony klucz podstawowy

  3. Skrypt Bash do instalacji PostgreSQL - nie działa

  4. Jak wybrać dane binarne z kolumny postgres

  5. Generuj uuid w systemie Windows postgresql