对于使用sql server 编写存储过程或者类似的sql 查询的时候我们使用表变量进行临时数据的存储,可以方便我们进行下来的数据处理
表变量的使用类似如下:
declare
@userinfo table(id nvarchar(50),name nvarchar(50));
insert into @userinfo(id,name) select classid,classname from classfirst
select * from @userinfo
以上的操作就是进行查询classfirst 表的数据并插入 定义的临时表变量中 ,最好我在查询输入对应表变量的数据
结果如下:
1 测试
2 应用
3 系统
122 demo
444 aaaaa
122 demo
444 aaaaa
122 demo
444 aaaaa
122 demo
444 aaaaa
对于表变量我们还可以进行的操作有筛选,分组 统等等
以下为例子:
declare
@userinfo table(id nvarchar(50),name nvarchar(50));
insert into @userinfo(id,name) select classid,classname from classfirst
--select * from @userinfo where CONVERT(int,id)<300
select sum(CONVERT(int,id)) as sumresult from @userinfo where CONVERT(int,id)<300
这条语句也比较简单就是对于上边的操作进行数据类型的转换并进行和的相加
执行的结果如下:
sumresult
494
oracle 的 10g 也提供了类似table 表变量 可以方便的进行数据集合的处理