码迷,mamicode.com
首页 > 数据库 > 详细

MySql left join 多表连接查询优化语句

时间:2014-10-28 17:31:51      阅读:232      评论:0      收藏:0      [点我收藏+]

标签:style   blog   io   color   ar   sp   数据   div   on   

先过滤条件然后再根据表连接 同时在表中建立相关查询字段的索引这样在大数据多表联合查询的情况下速度相当快

SELECT M.*,SS.SensorCode,SS.SensorStatus,SS.ManufacturerId,SS.Electricity,
SS.Voltage,SS.MinElectricity,SS.MinVoltage,SS.Temperature,SS.StatusUpdteDate,SS.UpdateStatus ,tp.PricingStrategyid,tps.FreeDuration,bat.BerthTypeId 
FROM
(SELECT T.* , BS.ParkStatus,BS.ChangeTime ,CA.CantonName, SE.SectionName
 FROM
(SELECT A.* ,B.BerthId,B.BerthCode,B.BerthAddress,B.BerthStatus,B.LineDirection,B.CantonId,B.SectionId 
FROM 
(SELECT AR.AreaId,AR.AreaCode,AR.AreaName FROM   SYS_Area  AS AR  WHERE 1=1   AND AR.AreaCode=110 ) A 
LEFT JOIN  SYS_Berth AS B ON B.AreaId=A.AreaId ) T
JOIN SYS_BerthStatus AS BS ON T.BerthCode=BS.BerthCode  
JOIN SYS_Canton AS CA ON T.CantonId=CA.CantonId  
JOIN SYS_Section AS SE ON T.SectionId=SE.SectionId )M

LEFT JOIN SYS_Sensor SS ON M.BerthCode=SS.BerthCode 
LEFT JOIN TRA_PricingBerth AS tp ON tp.BerthCode=M.BerthCode 
  
LEFT JOIN TRA_PricingStrategy  AS tps ON tps.PricingStrategyId=tp.PricingStrategyId 
LEFT  JOIN SYS_BerthAndType AS bat ON bat.BerthCode=M.BerthCode 
ORDER BY BerthCode ASC

 

MySql left join 多表连接查询优化语句

标签:style   blog   io   color   ar   sp   数据   div   on   

原文地址:http://www.cnblogs.com/Warmsunshine/p/4057001.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!