SqlServer - 工作总结

循环处理清单

create table d_gclqd(
	qdbh varchar(20) primary key,
	sjqd varchar(20),
	jdjb int,
	htsl decimal(18,5)
)
insert into d_gclqd values('100',		'',			1,	0)
insert into d_gclqd values('100-1',		'100',		2,	0)
insert into d_gclqd values('100-1-1',	'100-1',	3,	111)
insert into d_gclqd values('100-1-2',	'100-1',	3,	112)
insert into d_gclqd values('100-2',		'100',		2,	0)
insert into d_gclqd values('100-2-1',	'100-2',	3,	121)
insert into d_gclqd values('100-3',		'100',		2,	103)
insert into d_gclqd values('200',		'',			1,	0)
insert into d_gclqd values('200-1',		'200', 		2,	0)
insert into d_gclqd values('200-1-1',	'200-1',	3,	211)
insert into d_gclqd values('200-2',		'200',		2,	0)
insert into d_gclqd values('200-2-1',	'200-2',	3,	221)

declare @jdjb  int
select @jdjb=max(jdjb) from d_gclqd

if @jdjb is null
	return
while @jdjb>0
	begin
		update d_gclqd set htsl = b.htsl from (
			select sjqd,sum(htsl) as htsl  from d_gclqd where jdjb=@jdjb group by sjqd
		)b where qdbh=b.sjqd
		set @jdjb=@jdjb-1
	end
select * from d_gclqd

清库语句

if exists(select * from sysobjects where name= 'sp_clear_log') 
	drop procedure sp_clear_log 
go

create procedure sp_clear_log 
	@db_name varchar(255)
with encryption as
begin 
	dump transaction @db_name with no_log  
	backup log @db_name with no_log  
	dbcc shrinkdatabase(@db_name) 
end 
go
--sp_clear_log qnmis

得到旬的函数

-- select dbo.getxunbydate('2012/10/11')  
-- select dbo.getxunbydate('2012.10.11')  
-- select dbo.getxunbydate('2012-10-11')  
  
alter function getxunbydate(@date varchar(10))  
    returns varchar(10)   
as  
begin  
    declare @result varchar(10)  
    declare @number int  
    set @number=day(@date)  
    if @number <= 10  
        begin  
            set @result='上旬'  
        end  
    else if @number>10 and @number<=20  
        begin  
            set @result='中旬'  
        end  
    else if @number>20 and @number<=31  
        begin  
            set @result='下旬'  
        end  
    return @result                
end


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值