关于sql server中的表函数?

关于sql server中的表函数


哔哔one
浏览 457回答 1
1回答

慕神8447489

这个问题用标致函数比较难,1楼调用标致函数的方法也是错误的,正确的方法应该是:SELECT * FROM DBO.CaculateDailyTM()我用游标实现 ,比较好理解:create table tb1(zm char(8),sd datetime,ed datetime)GOinsert into tb1 values('s1','1980-1-1','1980-2-1')insert into tb1 values('s2','1992-2-1','1993-3-1')GO--建立测试数据declare zm_cursor cursor fast_forward for select zm from tb1declare @t1 datetime,@t2 datetime,@zm char(8)declare @tb table(zm char(8),d datetime)open zm_cursorfetch next from zm_cursor into @zmwhile&nbsp;@@fetch_status=0beginselect @t1=sd,@t2=ed from tb1 where zm=@zmwhile @t1<=@t2begininsert into @tb values(@zm,@t1)set @t1=dateadd(day,1,@t1)endfetch next from zm_cursor into @zmendselect * from @tbclose zm_cursordeallocate zm_cursorGODROP TABLE TB1有问题HI我这个问题用标致函数比较难,1楼调用标致函数的方法也是错误的,正确的方法应该是:SELECT * FROM DBO.CaculateDailyTM()我用游标实现 ,比较好理解:create table tb1(zm char(8),sd datetime,ed datetime)GOinsert into tb1 values('s1','1980-1-1','1980-2-1')insert into tb1 values('s2','1992-2-1','1993-3-1')GO--建立测试数据declare zm_cursor cursor fast_forward for select zm from tb1declare @t1 datetime,@t2 datetime,@zm char(8)declare @tb table(zm char(8),d datetime)open zm_cursorfetch next from zm_cursor into @zmwhile&nbsp;@@fetch_status=0beginselect @t1=sd,@t2=ed from tb1 where zm=@zmwhile @t1<=@t2begininsert into @tb values(@zm,@t1)set @t1=dateadd(day,1,@t1)endfetch next from zm_cursor into @zmendselect * from @tbclose zm_cursordeallocate zm_cursorGODROP TABLE TB1有问题HI我这个问题用标致函数比较难,1楼调用标致函数的方法也是错误的,正确的方法应该是:SELECT * FROM DBO.CaculateDailyTM()我用游标实现 ,比较好理解:create table tb1(zm char(8),sd datetime,ed datetime)GOinsert into tb1 values('s1','1980-1-1','1980-2-1')insert into tb1 values('s2','1992-2-1','1993-3-1')GO--建立测试数据declare zm_cursor cursor fast_forward for select zm from tb1declare @t1 datetime,@t2 datetime,@zm char(8)declare @tb table(zm char(8),d datetime)open zm_cursorfetch next from zm_cursor into @zmwhile&nbsp;@@fetch_status=0beginselect @t1=sd,@t2=ed from tb1 where zm=@zmwhile @t1<=@t2begininsert into @tb values(@zm,@t1)set @t1=dateadd(day,1,@t1)endfetch next from zm_cursor into @zmendselect * from @tbclose zm_cursordeallocate zm_cursorGODROP TABLE TB1有问题HI我这个问题用标致函数比较难,1楼调用标致函数的方法也是错误的,正确的方法应该是:SELECT * FROM DBO.CaculateDailyTM()我用游标实现 ,比较好理解:create table tb1(zm char(8),sd datetime,ed datetime)GOinsert into tb1 values('s1','1980-1-1','1980-2-1')insert into tb1 values('s2','1992-2-1','1993-3-1')GO--建立测试数据declare zm_cursor cursor fast_forward for select zm from tb1declare @t1 datetime,@t2 datetime,@zm char(8)declare @tb table(zm char(8),d datetime)open zm_cursorfetch next from zm_cursor into @zmwhile @@fetch_status=0beginselect @t1=sd,@t2=ed from tb1 where zm=@zmwhile @t1<=@t2begininsert into @tb values(@zm,@t1)set @t1=dateadd(day,1,@t1)endfetch next from zm_cursor into @zmendselect * from @tbclose zm_cursordeallocate zm_cursorGODROP TABLE TB1有问题HI我这个问题用标致函数比较难,1楼调用标致函数的方法也是错误的,正确的方法应该是:SELECT * FROM DBO.CaculateDailyTM()我用游标实现 ,比较好理解:create table tb1(zm char(8),sd datetime,ed datetime)GOinsert into tb1 values('s1','1980-1-1','1980-2-1')insert into tb1 values('s2','1992-2-1','1993-3-1')GO--建立测试数据declare zm_cursor cursor fast_forward for select zm from tb1declare @t1 datetime,@t2 datetime,@zm char(8)declare @tb table(zm char(8),d datetime)open zm_cursorfetch next from zm_cursor into @zmwhile @@fetch_status=0beginselect @t1=sd,@t2=ed from tb1 where zm=@zmwhile @t1<=@t2begininsert into @tb values(@zm,@t1)set @t1=dateadd(day,1,@t1)endfetch next from zm_cursor into @zmendselect * from @tbclose zm_cursordeallocate zm_cursorGODROP TABLE TB1有问题HI我这个问题用标致函数比较难,1楼调用标致函数的方法也是错误的,正确的方法应该是:SELECT * FROM DBO.CaculateDailyTM()我用游标实现 ,比较好理解:create table tb1(zm char(8),sd datetime,ed datetime)GOinsert into tb1 values('s1','1980-1-1','1980-2-1')insert into tb1 values('s2','1992-2-1','1993-3-1')GO--建立测试数据declare zm_cursor cursor fast_forward for select zm from tb1declare @t1 datetime,@t2 datetime,@zm char(8)declare @tb table(zm char(8),d datetime)open zm_cursorfetch next from zm_cursor into @zmwhile @@fetch_status=0beginselect @t1=sd,@t2=ed from tb1 where zm=@zmwhile @t1<=@t2begininsert into @tb values(@zm,@t1)set @t1=dateadd(day,1,@t1)endfetch next from zm_cursor into @zmendselect * from @tbclose zm_cursordeallocate zm_cursorGODROP TABLE TB1有问题HI我这个问题用标致函数比较难,1楼调用标致函数的方法也是错误的,正确的方法应该是:SELECT * FROM DBO.CaculateDailyTM()我用游标实现 ,比较好理解:create table tb1(zm char(8),sd datetime,ed datetime)GOinsert into tb1 values('s1','1980-1-1','1980-2-1')insert into tb1 values('s2','1992-2-1','1993-3-1')GO--建立测试数据declare zm_cursor cursor fast_forward for select zm from tb1declare @t1 datetime,@t2 datetime,@zm char(8)declare @tb table(zm char(8),d datetime)open zm_cursorfetch next from zm_cursor into @zmwhile @@fetch_status=0beginselect @t1=sd,@t2=ed from tb1 where zm=@zmwhile @t1<=@t2begininsert into @tb values(@zm,@t1)set @t1=dateadd(day,1,@t1)endfetch next from zm_cursor into @zmendselect * from @tbclose zm_cursordeallocate zm_cursorGODROP TABLE TB1有问题HI我这个问题用标致函数比较难,1楼调用标致函数的方法也是错误的,正确的方法应该是:SELECT * FROM DBO.CaculateDailyTM()我用游标实现 ,比较好理解:create table tb1(zm char(8),sd datetime,ed datetime)GOinsert into tb1 values('s1','1980-1-1','1980-2-1')insert into tb1 values('s2','1992-2-1','1993-3-1')GO--建立测试数据declare zm_cursor cursor fast_forward for select zm from tb1declare @t1 datetime,@t2 datetime,@zm char(8)declare @tb table(zm char(8),d datetime)open zm_cursorfetch next from zm_cursor into @zmwhile @@fetch_status=0beginselect @t1=sd,@t2=ed from tb1 where zm=@zmwhile @t1<=@t2begininsert into @tb values(@zm,@t1)set @t1=dateadd(day,1,@t1)endfetch next from zm_cursor into @zmendselect * from @tbclose zm_cursordeallocate zm_cursorGODROP TABLE TB1有问题HI我这个问题用标致函数比较难,1楼调用标致函数的方法也是错误的,正确的方法应该是:SELECT * FROM DBO.CaculateDailyTM()我用游标实现 ,比较好理解:create table tb1(zm char(8),sd datetime,ed datetime)GOinsert into tb1 values('s1','1980-1-1','1980-2-1')insert into tb1 values('s2','1992-2-1','1993-3-1')GO--建立测试数据declare zm_cursor cursor fast_forward for select zm from tb1declare @t1 datetime,@t2 datetime,@zm char(8)declare @tb table(zm char(8),d datetime)open zm_cursorfetch next from zm_cursor into @zmwhile @@fetch_status=0beginselect @t1=sd,@t2=ed from tb1 where zm=@zmwhile @t1<=@t2begininsert into @tb values(@zm,@t1)set @t1=dateadd(day,1,@t1)endfetch next from zm_cursor into @zmendselect * from @tbclose zm_cursordeallocate zm_cursorGODROP TABLE TB1有问题HI我这个问题用标致函数比较难,1楼调用标致函数的方法也是错误的,正确的方法应该是:SELECT * FROM DBO.CaculateDailyTM()我用游标实现 ,比较好理解:create table tb1(zm char(8),sd datetime,ed datetime)GOinsert into tb1 values('s1','1980-1-1','1980-2-1')insert into tb1 values('s2','1992-2-1','1993-3-1')GO--建立测试数据declare zm_cursor cursor fast_forward for select zm from tb1declare @t1 datetime,@t2 datetime,@zm char(8)declare @tb table(zm char(8),d datetime)open zm_cursorfetch next from zm_cursor into @zmwhile @@fetch_status=0beginselect @t1=sd,@t2=ed from tb1 where zm=@zmwhile @t1<=@t2begininsert into @tb values(@zm,@t1)set @t1=dateadd(day,1,@t1)endfetch next from zm_cursor into @zmendselect * from @tbclose zm_cursordeallocate zm_cursorGODROP TABLE TB1有问题HI我这个问题用标致函数比较难,1楼调用标致函数的方法也是错误的,正确的方法应该是:SELECT * FROM DBO.CaculateDailyTM()我用游标实现 ,比较好理解:create table tb1(zm char(8),sd datetime,ed datetime)GOinsert into tb1 values('s1','1980-1-1','1980-2-1')insert into tb1 values('s2','1992-2-1','1993-3-1')GO--建立测试数据declare zm_cursor cursor fast_forward for select zm from tb1declare @t1 datetime,@t2 datetime,@zm char(8)declare @tb table(zm char(8),d datetime)open zm_cursorfetch next from zm_cursor into @zmwhile @@fetch_status=0beginselect @t1=sd,@t2=ed from tb1 where zm=@zmwhile @t1<=@t2begininsert into @tb values(@zm,@t1)set @t1=dateadd(day,1,@t1)endfetch next from zm_cursor into @zmendselect * from @tbclose zm_cursordeallocate zm_cursorGODROP TABLE TB1
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

SQL Server