in reply to help deriving mysql query from perl script
Hmmm, the bad news is: if you don't know any Perl or SQL then I think you will really struggle to get this done - sorry for being a bit brutal here....
Anyway, since this seems to be for a good cause, I think you can get some support here for sure but it may require a bit of work.
So, first of all: when you run this in a browser, can you give us the exact "where clause" and "group clause" you enter into the web form? There are two statements for queries to run against the database in that script and they both take these free-form chunks of SQL code. Since you say yourself that you don't know SQ, my suspicion would be that you entered SQL chunks that don't do what you think they are doing and that the DB is choking on a large amount of data to process.
To get tot he bottom of all this, you need to familiarise yourself with a tool for interacting with your database directly, i.e. someting to run queries against the DB and see the outcome. I would use the MySQL shell in a terminal and I also use this one here quite a bit if I want a GUI and graphical output: DbVisualizer - there is a free version that does all you need to do.
There are of course plenty of other tools to choose from.