Skip navigation links

MySQL Forums :: Performance :: Left Join between two large tables too slow!!


Advanced Search

Left Join between two large tables too slow!!
Posted by: Rupinder Dhaliwal ()
Date: July 01, 2013 04:56AM

We have 2 large tables having below structure:

CREATE TABLE Table1 (
`proid` bigint(20) NOT NULL,
`total` bigint(20) NOT NULL DEFAULT '0',
`create_date_time` datetime NOT NULL,
`site` varchar(255) DEFAULT NULL,
`exp` varchar(255) DEFAULT NULL,
KEY `pr_id` (`proid`),
KEY `pr_created_at` (`create_date_time`),
KEY `pr_site` (`site`),
KEY `pr_exp` (`exp`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE Table2 (
`proid` bigint(20) NOT NULL,
`total` bigint(20) NOT NULL DEFAULT '0',
`create_date_time` datetime NOT NULL,
`site` varchar(255) DEFAULT NULL,
`exp` varchar(255) DEFAULT NULL,
KEY `pr_id` (`proid`),
KEY `pr_created_at` (`create_date_time`),
KEY `pr_siter` (`site`) ,
KEY `pr_exp` (`exp`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


Both the above tables have 18000+ records.

We're trying to fetch the data from the above two tables uing left join as below:

select
*
from
(select create_date_time,site,exp, sum(total) as imp_total
from Table2
group by create_date_time,site,exp) as imp
inner join
(select create_date_time,site,exp, sum(total) as req_total
from Table1
group by create_date_time,site,exp) as pr
on
imp.site=pr.site
and imp.create_date_time = pr.create_date_time
and imp.exp=pr.exp;

The requirement is that we need to group the data in tables by all three columns create_date_time,site and exp. Also there has to be a left join to fetch data from both tables.

Options: ReplyQuote


Subject Views Written By Posted
Left Join between two large tables too slow!! 4447 Rupinder Dhaliwal 07/01/2013 04:56AM
Re: Left Join between two large tables too slow!! 2680 Rick James 07/02/2013 03:04AM
Re: Left Join between two large tables too slow!! 1124 Rupinder Dhaliwal 07/02/2013 03:53AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.