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

पोस्टग्रेज, अपडेट और लॉक ऑर्डरिंग

कोई आर्डर बाय नहीं है अद्यतन में कमांड।
लेकिन SELECT . के लिए है . पंक्ति-स्तरीय लॉकिंग अद्यतन के लिए खंड एक सबक्वेरी में:

UPDATE foo f
SET    a = 1
FROM (
   SELECT b FROM foo
   WHERE  b IN (1,2,3,4)
   ORDER BY b
   FOR   UPDATE
   ) upd
WHERE f.b = upd.b;

बेशक, b अद्वितीय होना चाहिए या आपको ORDER BY . में और भाव जोड़ने होंगे इसे स्पष्ट करने के लिए खंड।

और आपको सभी . के लिए समान आदेश लागू करने की आवश्यकता है अपडेट करें , हटाएं और चुनें .. अद्यतन के लिए मेज पर बयान।

संबंधित, अधिक विवरण के साथ:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgresql में आईडी कॉलम स्थिति महत्वपूर्ण है?

  2. PostgreSQL में JSONB मान मर्ज करना?

  3. तालिका नाम n Postgre>=9.2 . चर से चयन कैसे करें

  4. इस परिणामसेट के बंद होने के कारण कनेक्शन नहीं खोला जा सका

  5. केवल पोस्टग्रेज में फंक्शन का बैकअप कैसे लें