作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个INSERT INTO SELECT
下面建模的查询并且它可以正常工作。未包含但我想包含的内容是检查 INSERT INTO
是否有效的方法。数据已存在于wa_research
中 table 。
INSERT INTO wa_research C
(field1,
field2,
field3,
field4,
field5,
field6,
field7,
field8,
field9,
field10)
SELECT A.field1,
A.field2,
A.field3,
A.field4,
A.field5,
A.field6,
A.field7,
A.field8,
A.field9,
A.field10
FROM wa_tmp_listed A
LEFT JOIN wa_list B
ON A.field2 = B.field2
WHERE B.field2 IS NULL
我想在插入 wa_research
之前进行检查并跳过具有 C.field1
组合的行, C.field2
, C.field3
在 wa_research
表。
我想我可以用额外的 JOIN
来做到这一点,所以如果您有建议或示例和/或指导我扩展 JOIN
的类型,我希望这样做会有所帮助。
最佳答案
您可以向 WHERE
子句添加条件,并将 NOT EXIST
与子查询一起使用:
INSERT INTO wa_research C (field1, field2, field3, field4, field5,
field6, field7, field8, field9, field10)
SELECT A.field1, A.field2, A.field3, A.field4, A.field5,
A.field6, A.field7, A.field8, A.field9, A.field10
FROM wa_tmp_listed A
LEFT JOIN wa_list B ON A.field2 = B.field2
WHERE B.field2 IS NULL
AND NOT EXISTS(SELECT *
FROM wa_research CC
WHERE CC.field1 = A.field1
AND CC.field2 = A.field2
AND CC.field3 = A.field3)
关于mysql - INSERT INTO SELECT WHERE,检查重复条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49522047/
我是一名优秀的程序员,十分优秀!