[英]SQL query to delete WP users with duplicate first and last names
我们有一个 woocommerce 站点,该站点多年来一直进行后门注册,导致数千个垃圾邮件帐户。
我已经能够删除所有“.ru”和其他垃圾邮件 email 帐户,但有许多 gmail 地址正在使用。
其中许多人似乎很常见的一件事是名字和姓氏相同,例如:“Donaldpat Donaldpat”。
我将如何编写一个 SQL 查询,该查询将从 wp_users 表中删除在相关 wp_usermeta 表值中名字和姓氏具有相同值的用户?
会是这样的吗:
DELETE FROM wp_users
WHERE EXISTS (
SELECT * FROM wp_usermeta
WHERE wp_usermeta.user_id = wp_users.ID
AND wp_usermeta.first_name = wp_usermeta.last_name
)
你可以试试这个,我在这里做的是分离我不需要的users.ID
,所以我只有要删除的表。 我决定使用IN
而不是使用EXISTS
,因为这样您可以直接获取列表 ID,然后将其删除。
DELETE FROM wp_users
WHERE wp_users.ID IN (
SELECT DISTINCT user_id
FROM wp_usermeta
WHERE wp_usermeta.first_name = wp_usermeta.last_name
)
我希望这可以帮到你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.