sql server一个使用游标的实例
--创建游标
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
相关文档:
1. SQL优化的原则是:
将一次操作需要读取的BLOCK数减到最低,即在最短的时间达到最大的数据吞吐量。
调整不良SQL通常可以从以下几点切入:
检查不良的SQL,考虑其写法是否还有可优化内容
检查子查询 考虑SQL子查询是否可以用简单连接的方式进行重新书写  ......
第一种:
public void deleteUser(String byemail) {
Session session = getSession();
Transaction transaction = null;
String hql = "delete from Register where email=?
";
try {
transaction = session.beginTransactio ......
--> Title : SQL Server2005 Synonym的使用
--> Author : wufeng4552
--> Date : 2009-10-30
1.Synonym的概念
Synonym(同义词)是SQL Server 2005的新特性。可以简单的理解Synonym为其他對象的别名。
語法
CREATE SYNONYM [ schema_name_1. ] synonym_name FOR & ......
这是一个CSDN Oracle开发版块里,网友问过的一道题
题如下
create table A_TEST
(
PAYOUT_ITEM_CODE VARCHAR2(30) not
null,
FORMULA_DET VARCHAR2(1000)
)
create table B_TEST
(
ELEMENT_ID VARCHAR2(5) not null,
NAME VARCHAR2(41)
)
求写oracle多个字符替换(有测试数据)
inser ......
SUBSTRING
返回字符、binary、text 或 image 表达式的一部分。有关可与该函数一起使用的有效 Microsoft® SQL Server ......