Thread: Two Permance Questions

Two Permance Questions

From
"CN LIOU"
Date:
Hi!

Q1. Is subquery better or join?

For subquery:

SELECT t1.c1,(SELECT t2.c2 FROM t2 WHERE t2.c1 = t1.c1) FROM t1

I wonder it will loop n times if t1 returns n rows. If this is the case, is it better to use join like this:

SELECT t1.c1,t2.c2 FROM t1,t2 WHERE t2.c1 = t1.c1

Q2. If the query is not optimize like this:

SELECT t1.c1,t2.c2 FROM t1,t2,t1,t2,t2 WHERE t2.c1=t1.c1 AND t1.c1=t2.c1 AND t1.c1=t2.c1

and the size of this clause can soar up to several kbytes, then can this query cause performance problem?

Regards,
-- 
_______________________________________________
Get your free email from http://www.graffiti.net

Powered by Outblaze


Re: Two Permance Questions

From
CoL
Date:
The select without subselect of course is better, and faster.
Check your "explain analyze select ..." to se the performance, and to 
check the index usage if any.

C.

CN LIOU wrote:
> Hi!
> 
> Q1. Is subquery better or join?
> 
> For subquery:
> 
> SELECT t1.c1,(SELECT t2.c2 FROM t2 WHERE t2.c1 = t1.c1) FROM t1
> 
> I wonder it will loop n times if t1 returns n rows. If this is the case, is it better to use join like this:
> 
> SELECT t1.c1,t2.c2 FROM t1,t2 WHERE t2.c1 = t1.c1
> 
> Q2. If the query is not optimize like this:
> 
> SELECT t1.c1,t2.c2 FROM t1,t2,t1,t2,t2 WHERE t2.c1=t1.c1 AND t1.c1=t2.c1 AND t1.c1=t2.c1
> 
> and the size of this clause can soar up to several kbytes, then can this query cause performance problem?
> 
> Regards,