MySQL conditionnelle INSERT
-
08-10-2019 - |
Question
Je veux faire un insert conditionnel avec MySQL. J'ai 2 tables (voitures et CarType).
La table de voiture a un coloumn appelé typeId
, qui pointe vers une entrée dans la table de CarType.
Je veux seulement insérer une ligne dans la table de voiture si la typeId donnée existe dans la table de CarType.
J'ai essayé quelques recherches sur Google, et a essayé quelques solutions. Voici ce que j'ai trouvé
(Mais il ne fonctionne pas):
INSERT INTO Car (title, licensePlate, carType
SELECT 'Ford Transit', 'SV 32 654', '13'
FROM DUAL
WHERE EXISTS (SELECT typeId FROM CarType WHERE typeId = 13)
La solution
Je pense que vous induire en erreur par l'exemple, il peut être aussi simple que cela:
INSERT INTO Car (title, licensePlate, carType)
SELECT 'Ford Transit', 'SV 32 654', '13'
FROM CarType WHERE typeId=13;
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow