PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

PostgreSQL Upsert (Pada Konflik) dengan nilai yang sama di Sisipkan dan Perbarui

Gunakan excluded kata kunci:

INSERT INTO cars 
  (car_id, car_type, car_model) 
values
  (1, 'tesla', 'model s')
ON CONFLICT (car_id) DO UPDATE SET 
  car_type = excluded.car_type,
  car_model = excluded.car_model;

Ini juga berfungsi dengan benar dengan banyak baris, mis:

INSERT INTO cars 
  (car_id, car_type, car_model) 
values
  (1, 'tesla', 'model s'), 
  (2, 'toyota', 'prius')
ON CONFLICT (car_id) DO UPDATE SET 
  car_type = excluded.car_type,
  car_model = excluded.car_model;



  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 gagal permintaan spesifik SATU kali setelah Windows reboot

  2. Setel ulang basis data postgresql Django? flush tidak berfungsi

  3. PostgreSQL tidak menerima alias kolom dalam klausa WHERE

  4. cara menanyakan min atau maks inet/cidr dengan postgres

  5. Buat kolom secara dinamis untuk tab silang di PostgreSQL