当前位置: 代码迷 >> Sql Server >> 这个查询语句可以简化吗?解决思路
  详细解决方案

这个查询语句可以简化吗?解决思路

热度:67   发布时间:2016-04-24 19:02:21.0
这个查询语句可以简化吗?
这个查询语句可以简化吗?

SELECT * FROM ICPrcPlyEntry AS Price INNER JOIN 
(SELECT  FItemID,FRelatedID,FCuryID,FUnitID,max(FBegDate) AS FBegDate FROM ICPrcPlyEntry 
GROUP BY  FItemID,FRelatedID,FUnitID,FCuryID) AS Ref 
ON Ref.FItemID=Price.FItemID AND Ref.FRelatedID=Price.FRelatedID AND
 Ref.FUnitID = Price.FUnitID AND Ref.FCuryID=Price.FCuryID AND Price.FBegDate=Ref.FBegDate



------解决方案--------------------
你这个是求最近一个日期的数据是吧,我给格式化了一下,基本上你的语句已经很优化了:


SELECT * 
FROM ICPrcPlyEntry AS Price 
INNER JOIN 
(
SELECT  FItemID,FRelatedID,
        FCuryID,FUnitID,
        max(FBegDate) AS FBegDate 
FROM ICPrcPlyEntry 
GROUP BY  FItemID,FRelatedID,FUnitID,FCuryID
) AS Ref 
ON 
 Ref.FItemID=Price.FItemID AND 
 Ref.FRelatedID=Price.FRelatedID AND
 Ref.FUnitID = Price.FUnitID AND 
 Ref.FCuryID=Price.FCuryID AND 
 Price.FBegDate=Ref.FBegDate
  相关解决方案