Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Apakah replace into memiliki klausa where?

Saya dapat melihat bahwa Anda telah memecahkan masalah Anda, tetapi untuk menjawab pertanyaan awal Anda:

REPLACE INTO apakah tidak memiliki WHERE klausa.

REPLACE INTO sintaks berfungsi tepat seperti INSERT INTO kecuali bahwa setiap baris lama dengan kunci utama atau unik yang sama akan dihapus secara otomatis sebelum baris baru dimasukkan.

Ini berarti bahwa alih-alih WHERE klausa, Anda harus menambahkan kunci utama ke nilai yang diganti untuk membatasi pembaruan Anda.

REPLACE INTO myTable (
  myPrimaryKey,
  myColumn1,
  myColumn2
) VALUES (
  100,
  'value1',
  'value2'
);

...akan memberikan hasil yang sama seperti...

UPDATE myTable
SET myColumn1 = 'value1', myColumn2 = 'value2'
WHERE myPrimaryKey = 100;

...atau lebih tepatnya:

DELETE FROM myTable WHERE myPrimaryKey = 100;
INSERT INTO myTable(
  myPrimaryKey,
  myColumn1,
  myColumn2
) VALUES (
  100,
  'value1',
  'value2'
);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. grup hitung mysql dengan memiliki

  2. Buat Beberapa tabel MySQL menggunakan PHP

  3. Cara Mendapatkan Tahun dan Bulan Dari Tanggal di MySQL

  4. Berapa banyak kolom yang dapat Anda miliki (maksimum) dalam tabel MySQL?

  5. masalah dengan utf8 di java