INSERT
sætninger understøtter to syntakser:en, der bruger VALUES
, og en, der bruger en forespørgsel.
Du kan ikke kombinere dem, og kun forespørgselssyntaksen understøtter WHERE
klausuler. Så:
INSERT INTO `surfed_site` (user, site)
SELECT '123', '456' FROM (SELECT 1) t
WHERE NOT EXISTS (SELECT site FROM `surfed_site` WHERE site=456)
- Faktisk tre syntakser; du kan også bruge
SET
. Hvis du kun indsætter én post, svarer denne funktionelt tilVALUES
, men uden tvivl mere læsbar.