请教关于sql游标的输出结果
我对一个表进行操作,表数据见下图,想在一个临时表中添加一个字段,并根据表数据的score值输出是否合格。
下面是我拥游标写的语句,但是在sql执行总是出来很多table值,如何只要最后一个table,多谢各位指点~~

结果是下图:

我写的语句:
Declare @T_REGISTER_INFO TABLE
(
ID VARCHAR(36),
SCORE VARCHAR(20),
IS_PASS VARCHAR(20)
)
INSERT INTO @T_REGISTER_INFO(ID, SCORE)
SELECT * FROM dbo.demo
-- 定义游标mytestcursor:
declare mytestcursor cursor for
select * from @T_REGISTER_INFO
-- 打开游标mytestcursor:
open mytestcursor
--fetch取出游标所指的记录
fetch next from mytestcursor
/***************** begin of loop *******************************/
while @@fetch_status = 0
begin
UPDATE @T_REGISTER_INFO SET IS_PASS =
(
CASE
WHEN SCORE = 'A' THEN '优秀'
WHEN SCORE = 'B' THEN '及格'
WHEN SCORE = 'C' THEN '不及格'
END
)
fetch next from mytestcursor
end
/***************** end of loop *******************************/
/***********关闭游标,释放游标:***************/
close mytestcursor
deallocate mytestcursor
SELECT * FROM @T_REGISTER_INFO
下面是我拥游标写的语句,但是在sql执行总是出来很多table值,如何只要最后一个table,多谢各位指点~~
结果是下图:
我写的语句:
Declare @T_REGISTER_INFO TABLE
(
ID VARCHAR(36),
SCORE VARCHAR(20),
IS_PASS VARCHAR(20)
)
INSERT INTO @T_REGISTER_INFO(ID, SCORE)
SELECT * FROM dbo.demo
-- 定义游标mytestcursor:
declare mytestcursor cursor for
select * from @T_REGISTER_INFO
-- 打开游标mytestcursor:
open mytestcursor
--fetch取出游标所指的记录
fetch next from mytestcursor
/***************** begin of loop *******************************/
while @@fetch_status = 0
begin
UPDATE @T_REGISTER_INFO SET IS_PASS =
(
CASE
WHEN SCORE = 'A' THEN '优秀'
WHEN SCORE = 'B' THEN '及格'
WHEN SCORE = 'C' THEN '不及格'
END
)
fetch next from mytestcursor
end
/***************** end of loop *******************************/
/***********关闭游标,释放游标:***************/
close mytestcursor
deallocate mytestcursor
SELECT * FROM @T_REGISTER_INFO
...全文
相关推荐
游标分类汇总行转列oracleplsql
使用游标游标的使用通常包括以下几个步骤:- 声明游标:定义游标并关联一个SQL查询语句。- 打开游标:使用 `OPEN` 语句打开游标,使游标指向查询结果的第一行。
SQL工作笔记-达梦7存储过程中游标的使用(for循环 IF等)
在SQL编程中,存储过程是预编译的SQL语句集合,用于执行特定任务,而游标则是一种机制,允许程序逐行处理查询结果。
游标实例与返回结果集的存储过程
#### 1.4 打开和关闭游标打开游标意味着执行游标所关联的SQL查询。关闭游标则释放相关的资源。
SQL深入 事务与游标编程
游标提供了一个指针,可以移动到结果集的任何位置,读取、修改或删除当前行。在SQL中,声明、打开、使用(读取、修改、删除)和关闭游标是使用游标的常规步骤。
SQL SERVER游标使用[可运行源码]
另外,游标可以用来访问复杂的存储过程的输出参数和结果集,这在处理数据时提供了更大的灵活性。尽管游标可能对系统性能造成一定影响,但它们在特定的场景下是非常有用的。


疑难问题
