sql >> Databáze >  >> RDS >> Mysql

aktualizovat, pokud existují dvě pole, vložit, pokud ne (MySQL)

Jedinečný index v MySQL nemusí být na jednom sloupci. Můžete přidat UNIQUE index do více sloupců jednoduše zadáním více sloupců ve vaší ALTER TABLE..ADD UNIQUE prohlášení:

ALTER TABLE myTable ADD UNIQUE (
    mykey,
    myfoo
);

Nyní můžete použít běžný INSERT INTO...ON DUPLICATE KEY prohlášení.

SQLFiddle DEMO (Všimněte si, že vícenásobné opakované hodnoty se nepřidávají – všechny ostatní ano )

Poznámka :

Pokud je některá z nich NULL, nebude být považován za jedinečný. mykey být 'bar' a myfoo být NULL lze přidat do nekonečna, i když mají "stejné" hodnoty (NULL není ve skutečnosti hodnota).




  1. Jak spustit uloženou proceduru každý den v SQL Server Express Edition?

  2. mySQL - porovnání latinského (anglického) vstupního formuláře s daty utf8 (neanglickými).

  3. MySQL:Uspořádejte podle velikosti/délky pole

  4. Microsoft oznamuje SQL Server 2012 R2 a SQL Server 2012 R3!