I have thousands of spam users registered on my site (as do many others) and I've come up with the best way to cull them from legitimate users. There are two kinds of spammers:
1. Spammers that sign up and post spam. These are easy to block and delete as they come.
2. Spammers that sign up and do nothing. As long as you're using the point system 99% of users with 0 points are spam/ghost accounts. Any legitimate users that signed up and did nothing are useless accounts as well as there's no purpose in having an account if you do nothing as for anything else you can view publicly anyways.
The only exception here is a small handful of users that only recently signed up and became busy, didn't have time to do anything yet. However, having a few legitimate users become annoyed that they have to recreate their accounts in order to be able to delete thousands of fake accounts is definitely better for the site's health overall.
So, in MySql, how would we write and run the query:
delete all qa_users who's qa_userpoints points = 0