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

perbarui jika ada dua bidang, masukkan jika tidak (MySQL)

Indeks unik di MySQL tidak harus berada di satu kolom. Anda dapat menambahkan indeks UNIK pada beberapa kolom hanya dengan menentukan lebih banyak kolom di ALTER TABLE..ADD UNIQUE Anda pernyataan:

ALTER TABLE myTable ADD UNIQUE (
    mykey,
    myfoo
);

Sekarang Anda dapat menggunakan INSERT INTO...ON DUPLICATE KEY biasa pernyataan.

SQLFiddle DEMO (perhatikan bahwa beberapa nilai berulang tidak ditambahkan - semua nilai lainnya )

Catatan :

Jika keduanya NULL, itu tidak terhitung unik. mykey menjadi 'bar' dan myfoo menjadi NULL dapat ditambahkan hingga tak terhingga meskipun mereka memiliki nilai "sama" (NULL sebenarnya bukan nilai).




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Melacak waktu kueri DB - Rak buku/knex

  2. Pencarian Php Mysql Antara Dua Tanggal

  3. DROP TABLE JIKA ADA di MySQL

  4. Hibernate file konfigurasi (.cfg.xml) untuk memetakan beberapa tabel MySQL dalam database yang sama?

  5. Bagaimana cara mencari dan mengganti semua instance string dalam database?