--创建游标
DECLARE Cursor1 CURSOR FOR
SELECT NODE_NO,NODE_VALUE,SUM(RESALE_SUM-RESALERETU_SUM+SALE_SUM-SALERETU_SUM) sale_sum,
SUM(STORE_SUM) sum_store,SUM(STORE_SUM) store_sum,
sum(RESALE_PROFIT-RESALERETU_PROFIT+SALE_PROFIT-SALERETU_PROFIT-ADJUST_PROFIT) sale_profit
from tiger.BUSINESSREPORT20090702,tiger.GOODSINFO,tiger.PROD_TREE_MAST
WHERE RPT_GOODSNO=GDS_NO AND left(GDS_RIVALSHOP,4)=NODE_NO AND GDS_GRADE=3
GROUP BY NODE_NO,NODE_VALUE --打开游标
OPEN Cursor1; --定义变量
declare @node_no char(20),
@node_value char(50),
@sale_sum VARCHAR(20),
@sum_store VARCHAR(20),
@store_sum VARCHAR(20),
@sale_profit VARCHAR(20) --取数据
fetch NEXT from Cursor1 into @node_no,@node_value,@sale_sum,@sum_store,@store_sum,@sale_profit while(@@fetch_status=0)
begin
UPDATE tmp_node0615 SET RESALESUM20090702=ISNULL(@sale_sum,0),COUNT20090702=ISNULL(@store_sum,0) ,PROFIT20090702=ISNULL(@sale_profit,0) WHERE NODENO=@node_no;
UPDATE tmp_node0615 SET SUMSTOCK=SUMSTOCK+COUNT20090702 WHERE NODENO=@node_no;
fetch next from Cursor1 into @node_no,@node_value,@sale_sum,@sum_store,@store_sum,@sale_profit
end --关闭游标
close Cursor1 --删除游标资源
deallocate Cursor1
GO
我经常碰到有人会问一些数据库优化方面的问题,我觉得这是一最基本技能要求,特别是使用sql server 2005,对于sql server的优化,使用的专职dba或兼职dba们工作更轻松,效率更高了,但是还是有很多新人可能不大了解,我在这儿写一下最基本的一些介绍。
一、首先介绍一下sql server 2005中优化数据时使用到的两个工 ......