加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

Sqlserver 实际开发中表变量的用法

发布时间:2020-12-12 14:19:16 所属栏目:MsSql教程 来源:网络整理
导读:在实际的开发中,我们可能遇到的问题是,在一个存储过程里面,我们可能要返回多段sql的结果集,但是最终怎么把多个结果集合成一块呢,那么这个时候临时表变量就来了 declare? @tmp table?? --声明表变量 ( id int identity(1,1),??? --字段 必须和插入表变量

在实际的开发中,我们可能遇到的问题是,在一个存储过程里面,我们可能要返回多段sql的结果集,但是最终怎么把多个结果集合成一块呢,那么这个时候临时表变量就来了

declare? @tmp table?? --声明表变量
(
id int identity(1,1),??? --字段 必须和插入表变量里的数量一一对应
Name varchar(60),
[Description] varchar(60),
Category varchar(60)
)
insert @tmp
???? select Book.Name,Book.[Description],Book.Category from Book
select * from? @tmp

这是正常的sql写法,注意的是: select 到from中间的字段一定要和表变量里的字段一样,顺序,数量一一对应

下面是存储过程的写法:

create? proc P_getSelect
as
begin
declare? @tmp table? --声明表变量
(
id int identity(1,
Name varchar(60),Book.Category from Book

declare? @tmp2 table(id int identity(1,Name varchar(60),[Description] varchar(60),Category varchar(60))insert @tmp2 ? ? --声明表变量2?? 这里为了方便? 我把一个表的数据分别放到两个表变量里了???? select Book.Name,Book.Category from Book?? ? select t.*,tt.* from @tmp t,@tmp2 ttendexec P_getSelect

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读