gpt4 book ai didi

sql - 联接后的SQL删除重复的行

转载 作者:行者123 更新时间:2023-12-04 16:58:12 25 4
gpt4 key购买 nike

我有 table T1

ID   STATUS
1 NEW
2 CLOSED
3 NEW

我有 table T2
ID   OWNER 
1 A
1 B
1 C
1 A
1 B
2 A
2 B
2 A
3 A

我想加入T1和T2,并为每个不同的ID和每个不同的所有者拥有多个行。如果OWNER在T2中重复多次,则应将其忽略,并将重复项删除。

因此,最终的预期结果应该是:
ID  STATUS  OWNER
1 NEW A
1 NEW B
1 NEW C
2 CLOSED A
2 CLOSED B
3 NEW A

因此,您可以看到应该删除重复项(多次使用相同ID的同一所有者)。我只需要将输出作为ID列表以及该ID的每个不同的OWNER列表即可,但是他在T2表中负责多少次并不重要。我需要做出某种区分。

如果我像这样进行查询,则每个ID和OWNER都不会得到不同的值,但是在这种情况下,我也会有重复的值。
    select t1.id,t1.status,t2.owner 
FROM t1
join t2
on t1.id=t2.id

最佳答案

如果我正确理解,则需要这样做:

select T1.ID, T1.STATUS, t.OWNER from T1
inner join(
select ID, OWNER from T2 group by ID, OWNER
) t
on T1.ID = t.ID

关于sql - 联接后的SQL删除重复的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43435216/

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