gpt4 book ai didi

sql - 只列出重复的名字

转载 作者:行者123 更新时间:2023-12-03 19:10:21 26 4
gpt4 key购买 nike

| personid | first | last | section |
| 1 | Jon | A | y3 |
| 2 | Bob | Z | t6 |
| 3 | Pat | G | h4 |
| 4 | Ron | Z | u3 |
| 5 | Sam | D | y3 |
| 6 | Sam | D | u3 |
| 7 | Pam | F | h4 |


我想隔离所有重复名称,尽管有其他列,如下所示:

| personid | first | last | section |
| 5 | Sam | D | y3 |
| 6 | Sam | D | u3 |


这是我想出的,但是我无法使它起作用:

SELECT personid, last, first, section FROM   d 01 WHERE  EXISTS 
(SELECT * FROM d 02 WHERE 02.last = 01.last AND 02.first = 01.first )

最佳答案

您必须检查2行是否具有不同的ID:

SELECT d1.personid, d1.last, d1.first, d1.section 
FROM d d1 WHERE EXISTS (
SELECT *
FROM d d2
WHERE d1.personid <> d2.personid AND d2.last = d1.last AND d2.first = d1.first
)


始终用表的名称/别名来限定列名,除非数字用反引号或方括号括起来,否则请勿将数字用作别名。
请参见 demo
结果:

| personid | last | first | section |
| -------- | ---- | ----- | ------- |
| 5 | D | Sam | y3 |
| 6 | D | Sam | u3 |

关于sql - 只列出重复的名字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59361904/

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