SQL语句查询结果集中的动态修改案例(临时表+游标)
来源:互联网 发布:淘宝客超级搜索 编辑:程序博客网 时间:2024/04/30 13:15
本文转载:http://www.cnblogs.com/Charles2008/archive/2008/03/04/1090314.html
曾经一位朋友问我这样一个问题:怎样在查询出来的结果集中增加一个新列(有规律)?
如:数据库中的结构和数据如下: (tableName : People)
Name Age
changchang 20
charles 23
sunny 21
huangzhs 22
dazu 65
现在通过SQL语句把查询的结果显示成:
Id Name Age
1 changchang 20
2 Charles 23
3 sunny 21
4 huangzhs 22
5 dazu 65
首先分析这道题目:(动态的增加新的一列(递增))
要在查询结果集中增加一个新列。而我们通过 select * from People 是没有ID这列的。
所以我们需要在查询出来的结果集中增加(一行一行增加).
实现要牵涉到的技术:
首先想到的是通过游标来实现(游标可以遍历结果集中的每一条记录)。
另外我们可以通过创建临时表或表变量来放增加新的列后的数据。
最后通过查询临时表就可以让查询结果中包含新增加的一列.
现在通过sql语句来实现上面的效果:
--定义参数declare @i intdeclare @name varchar(50)declare @age int--声明一个游标declare c_people cursorfor select * from people--打开游标open c_people--创建一个临时表create table #mypeople(Id int,Name varchar(50),Age int)set @i=1--读取数据fetch next from c_people into @name,@agewhile @@fetch_status=0begin--动态的增加新的一列到临时表insert into #mypeoplevalues(@i,@name,@age)set @i=@i+1fetch next from c_people into @name,@ageend--关闭游标close c_people--删除游标deallocate c_people--查询临时表select * from #mypeople--删除临时表drop table #mypeople
以上是我想到的实现方法。当然看来还是比较复杂的。如果有什么简单的方案。希望朋友们能及时的提出。分享知识是我最大的快乐。
- SQL语句查询结果集中的动态修改案例(临时表+游标)
- 游标遍历exec动态sql语句查询结果
- 利用临时表、REF游标、动态SQL实现分页查询
- 游标的结果集放入临时表
- 修改PL/SQL查询结果集中的日期date格式,禁止继承操作系统日期格式
- 获取SQL查询结果集中的行数和列数
- 动态sql语句游标的写法
- 如何把个表的合计字段 合并SQL查询到一个结果集中
- sql server游标查询语句
- 查询结果分页显示的SQL语句
- 查询结果分页显示的sql语句
- sql从查询结果创建一个临时表
- SQL的将EXEC()动态执行的结果集放到一张临时表
- sql 利用游标遍历一个查询结果
- Sql语句-临时表
- Sql Server临时表和游标的使用小总结
- sql 存储过程 临时表和游标的使用
- oracle函数返回结果集(动态查询Sql并定义游标)
- Android高手进阶教程(二十五)之---Android 中的AIDL!!!
- TransactionProxyFactoryBean代理事务-开放式事物管理
- HTTPS和和HTTP的区别
- 网站用户界面设计(俗称网页设计)命名规范。
- 排序算法实现大全
- SQL语句查询结果集中的动态修改案例(临时表+游标)
- android 中package名要区分大小写
- 字符串逆转隐藏的秘密
- 用数组把十进制转换成二进制
- 常用数据结构
- 数据库行转列的sql语句(zt)
- WPF基础知识
- TMS320C64x+ DSP------Using Cache(转)
- 计算阶乘