PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

AGGIORNA con ORDINA PER

UPDATE con ORDER BY :

UPDATE thetable 
  SET columntoupdate=yourvalue 
 FROM (SELECT rowid, 'thevalue' AS yourvalue 
         FROM thetable 
        ORDER BY rowid
      ) AS t1 
WHERE thetable.rowid=t1.rowid;

UPDATE l'ordine è ancora casuale (credo), ma i valori forniti a UPDATE comando sono abbinati a thetable.rowid=t1.rowid condizione. Quindi quello che sto facendo è, prima selezionando la tabella "aggiornata" in memoria, si chiama t1 nel codice sopra, e quindi facendo in modo che la mia tabella fisica assomigli a t1 . E l'ordine di aggiornamento non ha più importanza.

Per quanto riguarda il vero UPDATE , non credo possa essere utile a nessuno.