gpt4 book ai didi

mysql - 如何处理重复键

转载 作者:行者123 更新时间:2023-11-30 21:36:38 24 4
gpt4 key购买 nike

tblA

编号

tblB

id, id2

我想检查 tbl A ID 是否存在于 tbl B ID 但不查看 id2,tblB 中的 id2 列将具有 tblA 中存在的键。

SELECT id
FROM tblA as a
WHERE NOT EXISTS
(
SELECT * FROM tblB AS b
WHERE a.id = b.id
)

从逻辑上讲,这应该可行,但出于某种原因,它还为我提供了 tblB 中 id2 列中存在的值,而 tblA id 中不存在

示例数据

tblA

ID 
1
2
3
4

tblB

tblb_ID   | ID2 
3 | 34
4 | 38
12 | 93
43 | 54
54 | 4

预期结果

1,2 因为 tblB 中不存在 1 和 2。

我得到了什么,

只有1个,因为ID2中存在4个,这是为什么呢?

最佳答案

如果我理解你的问题,应该很简单。您只需要 tblA 中 tblA.id 与 tblB.id 不匹配的行。 tblB.id2 无关紧要。

 SELECT * FROM tblA WHERE id NOT IN (SELECT tblb_ID FROM tblB)

如评论所述,您的原始查询应该有效。根据您的更新信息,这看起来像是正确的查询:

SELECT id
FROM tblA as a
WHERE NOT EXISTS
(
SELECT * FROM tblB AS b
WHERE a.id = b.tblb_ID
)

关于mysql - 如何处理重复键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53639364/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com