gpt4 book ai didi

MYSQL 从列匹配的表中选择

转载 作者:太空宇宙 更新时间:2023-11-03 12:03:05 24 4
gpt4 key购买 nike

我需要在一些数据库中查询一列中有重复的行。

例如,表服务器:

---------------------
name | ip
---------------------
| bob | 10.1.2.3 |
| larry | 10.1.2.3 |
| sam | 10.9.9.9 |
| george | 10.9.9.9 |
| bill | 10.6.6.6 |
| anne | 10.7.7.7 |

我需要我的查询来提取 bob、larry、sam、george 的行,因为它们在第二列(在本例中为 IP 地址)中有匹配项/重复项。

'bill' 和 'anne' 不会返回,因为他们有唯一的 IP

最佳答案

您可以使用子查询获取带有多个附加 nameip 并将结果放在 IN 子句中:

SELECT * 
FROM servers
WHERE ip IN ( SELECT ip
FROM servers
GROUP BY ip
HAVING COUNT(*) > 1)

SQLFiddle

或者你可以使用JOIN,逻辑是一样的:

SELECT t1.*
FROM servers t1 JOIN (
SELECT ip
FROM servers
GROUP BY ip
HAVING COUNT(*) > 1
) t2 ON t1.ip = t2.ip

SQLFiddle

关于MYSQL 从列匹配的表中选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28035352/

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