⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 点击率最高的游标实验.txt

📁 图书管理系统 按书本上写的编辑的
💻 TXT
字号:
/* 
功能: 搜索类别表[className]中的每个类别下点击率最高的那条记录,然后将这些记录降序排列
作者: vivianhu
整理: kgdiwss(我只是添加了注释以及重命名了一些变量)
日期: 2006-4-17
*/


/* 如果存在临时表tTable,则先将它删除 */


if exists (
select * from dbo.sysobjects 
where id = object_id(N'[dbo].[tTable]') and OBJECTPROPERTY(id, N'IsUserTable') = 1
)
drop table [dbo].[tTable]

GO




/* 创建临时表 */


create table tTable
(
productid int,
productname varchar(10),
clicknum int
)


/*  变量申明 */

declare @classID int 

/*  定义游标 */

declare cursor_classID   
CURSOR FOR 
SELECT classID FROM className

/*
打开游标
@@FETCH_STATUS
返回被 FETCH 语句执行的最后游标的状态,而不是任何当前被连接打开的游标的状态。
0 表示 FETCH 语句成功。 
*/


OPEN cursor_classID
FETCH NEXT FROM cursor_classID INTO @classID 
WHILE @@FETCH_STATUS = 0


/* 搜索某一类别中点击率最高的一条记录 */

BEGIN

 insert into tTable
 select  top 1 productID,productName,clickNum from productInfo 
  where parentID = @classID 
   order by clickNum desc

   FETCH NEXT FROM cursor_classID INTO @classID

END

/* 关闭游标 */

CLOSE cursor_classID

/* 删除游标引用 */

DEALLOCATE cursor_classID

/* 对临时表中的记录根据点击率进行降序排列 */

select * from tTable order by clickNum desc 

/* 删除临时表 */
drop table tTable

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -