我想要一个问题的指导。假设我有一个表alphabets
(alpha
,id
)
在具有值a-z和列id的列alpha
中,所有值均为1.
a 1
b 1
. .
. .
z 1
现在我想要一个数据库查询来插入像a-z这样的数据,但是id = 2。
任何人都可以帮助我。
答案 0 :(得分:6)
INSERT INTO alphabets (alpha, id)
SELECT alpha, 2
FROM alphabets a
WHERE id = 1
AND NOT EXISTS (
SELECT * FROM alphabets
WHERE alpha = a.alpha
AND id = 2
)
请注意,WHERE
子句会使此查询idempotent,即如果您运行两次,它将不会复制id = 2行。