I have three SQL queries that return similar columns from three different tables respectively.
When i run the SQL queries individually, they take approximately 2 seconds each to display the relevant data
select a,b,c from table1; //2 sec
select a,b,c from table2; //2 sec
select a,b,c from table3; //2 sec
But when I use UNION on these 3 queries to display all the data together, it takes a lot of time to display the results (phpmyadmin shows that it took 2-3 minutes to run the query but it took a lot longer than 3 minutes, around 10 approximately)
select a,b,c from table1
union
select a,b,c from table2
union
select a,b,c from table3; //2-3 minutes on sql but >10 minutes in actual
i know union does all the calculations to eliminate all the duplicate results,
so i tried UNION ALL (phpmyadmin showed it taking 7 seconds to run the query, which sounds normal but it actually took around 4 minutes to display the data)
select a,b,c from table1
union all
select a,b,c from table2
union all
select a,b,c from table3; //7-8 seconds on sql but >4 minutes in actual
-- Why Does it take too long when i union queries???
-- Also, when these queries are about to finish (line in the last 1 minute or so), the Apache starts consuming large amounts of memory, more than 2GB. Why does it consume so much memory??