sql >> Databáze >  >> RDS >> PostgreSQL

Aktualizujte více záznamů v jedné transakci ActiveRecord v Rails

Řekněme, že jste věděli, že chcete nastavit věci s ID 1, 2 a 3 tak, aby měly skóre 2, 8 a 64 (na rozdíl od pouze náhodných čísel), můžete:

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;

Takže u Rails byste použili ActiveRecord::Base.connection#execute pro provedení bloku podobného výše uvedenému, ale se správným interpolovaným hodnotovým řetězcem.



  1. Šifrovat připojovací řetězec v app.config

  2. PHP Mysql se spojuje napříč databázemi

  3. Jak a proč přidat primární klíče do tabulky databáze SQL, když už mám index

  4. Objednávejte pomocí polských písmen