INSERT
ステートメントは2つの構文をサポートします。1つはVALUES
を使用します 、およびクエリを使用するもの。
それらを組み合わせることはできず、クエリ構文のみがWHERE
をサポートします。 条項。だから:
INSERT INTO `surfed_site` (user, site)
SELECT '123', '456' FROM (SELECT 1) t
WHERE NOT EXISTS (SELECT site FROM `surfed_site` WHERE site=456)
- 実際には3つ 構文;
SET
を使用することもできます 。 1つのレコードのみを挿入する場合、これは機能的にVALUES
と同等です。 、しかし間違いなくもっと読みやすい。