Monday, 15 August 2011

Replacing sub query with join in mysql -



Replacing sub query with join in mysql -

i have mysql query like...

select ordertransaction.buyer, ordertransaction.parent_id order_transactions ordertransaction inner bring together ( select buyer order_transactions dy left bring together orders ebay on ebay.id=dy.parent_id ebay.status='0' , dy.parent_id in ( select parent_id order_shipping_details ds left bring together orders ebays on ebays.id=ds.parent_id ebays.status='0' , ebays.combined=0 grouping ds.street having count(ds.id) > 1 ) , ebay.combined=0 grouping dy.buyer ) dup on dup.buyer=ordertransaction.buyer left bring together orders ebay on ebay.id=ordertransaction.parent_id ebay.market_type!='shopclue' , ebay.status='0' , ebay.combined=0

i need optimize query , want remove inner select joins. help appreciated. in advance.

try code below might running faster 1 u using:

drop temporary table if exists temp1; create temporary table temp1; select buyer order_transactions dy left bring together orders ebay on ebay.id=dy.parent_id ebay.status='0' , dy.parent_id in ( select parent_id order_shipping_details ds left bring together orders ebays on ebays.id=ds.parent_id ebays.status='0' , ebays.combined=0 grouping ds.street having count(ds.id) > 1) , ebay.combined= '0' ; select ordertransaction.buyer, ordertransaction.parent_id order_transactions ordertransaction inner bring together temp1 tmp on tmp.buyer = ordertransaction.buyer left bring together orders ebay on ebay.id = ordertransaction.parent_id ebay.market_type! = 'shopclub' , ebay.status = '0' , ebay.combined = '0' please allow me know if have questions!

mysql join

No comments:

Post a Comment