gpt4 book ai didi

php - MySQL 查询将查找对多个用户名使用相同 IP 地址的用户

转载 作者:行者123 更新时间:2023-11-29 04:11:15 25 4
gpt4 key购买 nike

我已经在这个问题上做了一些功课,我很确定它会涉及到自己加入一个表,但我还没有完全做到这一点。

我有一个带有“帖子”表的论坛。它存储在论坛上发布的每个帖子的 ipaddress、用户名、userid 和 postid。

我正在尝试获得一个我可以每周运行的查询,这样会输出我在此期间被多个用户标识使用的 ipaddresses 列表 - 以及涉及多个用户标识使用相同 ipaddress 的 postids。

到目前为止,我已经从其他人的类似问题中得到了这个:

SELECT t1.userid,t2.userid, t1.username, t2.username, t1.ipaddress, t2.ipaddress, t1.postid, t2.postid
FROM qvb_post t1
INNER JOIN qvb_post t2 ON t1.ipaddress=t2.ipaddress AND t1.userid!=t2.userid
WHERE
t1.dateline > 1335897698 AND t2.dateline > 1335897698

但它会返回很多不必要的行 IMO,例如它会以两种方式返回每个重复行 - 就像用户 ID 1 使用用户 ID 2 的 IP 地址一样,又好像用户 ID2 使用用户 ID1 的地址。

日期线是几天前的。

理想情况下,我只想看到一个 IP 地址列表,其中包含重复的用户名并在每个帖子中重复,这样我就可以使用 PHP 并生成一个输出 IP 地址、用户名 (userids) 的报告使用它的人,以及他们创建的 postid。

我知道有很多正当理由可以让两个人拥有相同的 IP 地址,请放心,我们不会仅仅因为出现在本报告中就对任何人采取严厉措施。

提前感谢您提供的任何帮助。

需要说明的是,我对 PHP 没问题,这只是我需要帮助的查询。

最佳答案

这应该给你一个开始:

SELECT ipaddress, GROUP_CONCAT(DISTINCT username)
FROM qvb_post
GROUP BY ipaddress
HAVING COUNT(DISTINCT username) > 1
ORDER BY COUNT(DISTINCT username) DESC

它向您显示由多个不同用户名使用的 IP 地址,还为您提供每个 IP 地址的这些用户名的逗号分隔列表。如果您愿意,您可以将其扩展为还包含帖子 ID。

关于php - MySQL 查询将查找对多个用户名使用相同 IP 地址的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10465167/

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