数据库游标复习(MSSQL用内置的pubs做纯SQL的报表)

今天复习了下游标 流程控制语句 SQL查询等基础语法 做了一个纯SQL报表 附图:



 代码如下:用了一个游标的嵌套呵呵

declare @jobid smallint ,@jobdesc varchar(50)
declare @name varchar(50),@joblvl smallint ,@hdate smalldatetime

declare cur_job cursor for
  select job_id,job_desc from jobs order by job_id asc

open cur_job
fetch next from cur_job into @jobid,@jobdesc

while @@fetch_status=0
begin 
 --显示当前的工作编号和工作描述
 print cast(@jobid as varchar(4))+';'+@jobdesc
 declare cur_emp cursor for
   select fname +' '+lname,job_lvl,hire_date 
    from employee
   where job_id=@jobid
open cur_emp
 fetch next from cur_emp into @name ,@joblvl,@hdate
 while @@fetch_status=0
   begin 
	print '雇员:'+@name +',级别:'+cast(@joblvl as varchar(4))+',参加工作日期:'+datename(year,@hdate)+'年'+
        datename(mm,@hdate)+'月'+datename(day,@hdate)+'日'
        fetch next from cur_emp into @name ,@joblvl,@hdate
   end
  print'================================================================================='
  close cur_emp
  deallocate cur_emp
  fetch next from cur_job into @jobid,@jobdesc
end
close cur_job
deallocate cur_job
go
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值