sql server 2005 创建自定义函数

if exists (select * from dbo.sysobjects where id = object_id(N'dbo.calculateWeek') and xtype in (N'FN', N'IF', N'TF'))
-- 删除函数
drop function dbo.calculateWeek
GO
create function dbo.calculateWeek(@start int,@end int,@dsz int,@total int) returns varchar(50)
AS
BEGIN
declare @week varchar(50);
declare @i int
set @week=''
set @i=1
while @i<=@total
begin
if @i<@start
set @week=@week+'0' 
if @i>=@start and @i<=@end and @dsz=0
set @week=@week+'1'
if @i>=@start and @i<=@end and @dsz=1 and @i%2=1
set @week=@week+'1'
if @i>=@start and @i<=@end and @dsz=1 and @i%2=0
set @week=@week+'0'
if @i>=@start and @i<=@end and @dsz=2 and @i%2=0
set @week=@week+'1'
if @i>=@start and @i<=@end and @dsz=2 and @i%2=1
set @week=@week+'0'
if @i>@end
set @week=@week+'0' 
set @i=@i+1  
END
return @week
END

猜你喜欢

转载自yizhaorong.iteye.com/blog/1980129