PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

रेल में एक ActiveRecord लेनदेन में एकाधिक रिकॉर्ड अपडेट करें

मान लें कि आप जानते हैं कि आप आईडी 1, 2, और 3 के साथ चीजों को स्कोर, 2, 8, और 64 (केवल यादृच्छिक संख्याओं के विपरीत) के लिए सेट करना चाहते हैं, आप यह कर सकते हैं:

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;

तो रेल के साथ, आप ActiveRecord::Base.connection#execute का उपयोग करेंगे उपरोक्त के समान ब्लॉक को निष्पादित करने के लिए, लेकिन सही मान स्ट्रिंग के साथ प्रक्षेपित किया गया।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. गतिशील क्वेरी पोस्टग्रेज

  2. तालिका/स्तंभ नाम में वर्गाकार कोष्ठक समर्थित नहीं है?

  3. पोस्टग्रेस्क्ल दिनांक प्रारूप

  4. जूक - पोस्टग्रेज UNIQUE बाधा को पहचानने में समस्या

  5. PostgreSQL पर बेहिसाब एक्सटेंशन बनाते समय त्रुटि