-1

所以这是我禁止帐户过程的下一步,我最初的问题是:

所以我有一个名为 users 的表的数据库.. 在该表中有一个名为 IP 的列,我想找到具有相同 IP 的用户并禁止他们.. 那么如何在数据库中搜索相同的 IP 呢?

答案是

但基本上这应该有效:

从用户组中选择不同的 IP,count(id),按具有 count(id) > 1 的 IP。这将返回计数 > 1 的所有 IP 地址

确实如此,现在我有一个 IP 列表,我想看看是否有办法扩展该语句,以便:

if IP is greater than 1 UPDATE WHERE IP > 1 SET banned TO '1'`  
4

1 回答 1

0

您无法更新/编辑正在运行查询的当前表。您也可以将临时数据存储在临时表中并使用该表。这里,dst_tbl 是 tepm 表;

CREATE TABLE dst_tbl select distinct ip, count(id) from users group by IP having count(id) > 1;
update users set banned =1 where ip in ( select ip from dst_tbl);

虽然这只是一个例子。通过代理连接(学院)连接的用户将拥有相同的公共 IP。您不得在原始代码中实现此功能。

于 2013-04-27T00:57:08.320 回答