Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Wstaw MySQL tam, gdzie nie istnieje / jeśli nie istnieje

INSERT instrukcje obsługują dwie składnie:jedną, która używa VALUES i taki, który używa zapytania. Nie można ich łączyć, a tylko składnia zapytania obsługuje WHERE klauzule. A więc:

INSERT INTO `surfed_site` (user, site)
SELECT '123', '456' FROM (SELECT 1) t
WHERE NOT EXISTS (SELECT site FROM `surfed_site` WHERE site=456)
  1. Właściwie trzy składnie; możesz również użyć SET . Jeśli wstawiasz tylko jeden rekord, ten jest funkcjonalnie równoważny z VALUES , ale prawdopodobnie bardziej czytelne.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Obsługa transakcji w silniku MyIsam

  2. MySQL INNER JOIN wybierz tylko jeden wiersz z drugiej tabeli

  3. MySQL - zaznaczanie w pobliżu punktu przestrzennego

  4. Zaktualizuj pozycję w tabeli MySQL

  5. Jak ustawić domyślną wartość kolumny sygnatury czasowej na bieżący datownik za pomocą migracji Laravel?