请高手帮忙﹐优化一SQL语句。若有需要﹐改写成存储过程也行﹐谢谢了﹐在线等

zeng_c_h 2007-01-19 02:33:55
下面的SQL语句﹐来自项目开发中﹐请高手指点优化一下。非常感谢﹗
其實就是一SQL技巧﹐怎么更快的取得非Group By 語句中的字段值﹖
Select top 1 SupCode,TBNo,TBDate,MakeNo,PartCode,WHCode,ReceiveDate,Currency,Up,
Sum(Num_)as TNum_, Sum(SpareNum_)as TSpareNum_,Sum(ReceiveNum_)as TReceiveNum_,
Sum(ReceiveSpare_)as TReceiveSpare_,Sum(QcPassNum) as TQcPassNum_,
Sum(QcPassSpare)as TQcPassSpare_,Sum(ReturnNum)as TReturnNum_
From PurB
Where Final_=1 and Finish=0
Group By SupCode,TBNo,TBDate,MakeNo,PartCode,WHCode,ReceiveDate,Currency,Up
...全文
304 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
zeng_c_h 2007-01-19
  • 打赏
  • 举报
回复
哪位高手有時間幫下忙嗎﹖謝謝了
zeng_c_h 2007-01-19
  • 打赏
  • 举报
回复
To holdy(流浪随风),其中有些字段不能使用聚集﹐否则结果可能有误
zeng_c_h 2007-01-19
  • 打赏
  • 举报
回复
当PurB表中的数据在10W条以下时﹐可以考虑不优化﹐但数据量越来越大﹐排序花费的成本将越来越大﹐直到你受不了
holdy 2007-01-19
  • 打赏
  • 举报
回复
对SupCode,TBNo,TBDate,MakeNo,PartCode,WHCode,ReceiveDate,Currency,Up做一个聚集试试吧
zeng_c_h 2007-01-19
  • 打赏
  • 举报
回复
必须优化呀﹐上边的兄弟﹐这样的语句放到150W条记录的表中去执行﹐每次都是超时
csdnshao 2007-01-19
  • 打赏
  • 举报
回复
好像没有优化的必要
zeng_c_h 2007-01-19
  • 打赏
  • 举报
回复
求各位高手继续指点﹐在线等﹐谢谢
zeng_c_h 2007-01-19
  • 打赏
  • 举报
回复
谢谢 marco08(天道酬勤)﹐只是这样好象也没多大效果﹐表中数据很多的﹐有150W条左右
zeng_c_h 2007-01-19
  • 打赏
  • 举报
回复
上边SQL语句的功能就是按厂商﹐采购单号﹐料号汇总采购单的交货情况﹐并带出其余的一些关键词段﹐如日期﹐单价﹐币别﹐制令号等
marco08 2007-01-19
  • 打赏
  • 举报
回复
這樣聯接好像意義不大
marco08 2007-01-19
  • 打赏
  • 举报
回复
--try

select * from PurB A
left join
(
select SupCode, TBNo, PartCode,
Sum(Num_)as TNum_, Sum(SpareNum_)as TSpareNum_,Sum(ReceiveNum_)as TReceiveNum_,
Sum(ReceiveSpare_)as TReceiveSpare_,Sum(QcPassNum) as TQcPassNum_,
Sum(QcPassSpare)as TQcPassSpare_,Sum(ReturnNum)as TReturnNum_
from PurB
Where Final_=1 and Finish=0
Group By SupCode, TBNo, PartCode
)B on A.SupCode=B.SupCode and A.TBNo=B.TBNo and A.PartCode=B.PartCode
where A.Final_=1 and A.Finish=0
zeng_c_h 2007-01-19
  • 打赏
  • 举报
回复
表中无主建,但在SupCode,PartCode,TBNo上都有索引
marco08 2007-01-19
  • 打赏
  • 举报
回复
表有主建嗎?
zeng_c_h 2007-01-19
  • 打赏
  • 举报
回复
上边的语句中﹐其实真正需要分组的字段就SupCode,PartCode,TBNo﹐其余字段是报表必须的字段。

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧