in reply to (OT) perl, memory and mysql
Of course you are running out of memory. Your query is
If you don't set a join clause for each table, your query will be
producing a huge number of rows. And this would slurp up all your available
resources, no matter which DBMS you are using.
For example, if each table had 50 rows, then your query would generate
15,625,000,000 (fifteen billion rows).
With 100 rows per table, you'd get
1,000,000,000,000 rows (one thousand billion rows!). You get the idea.
Go get a SQL tutorial before continuing any further.