本文收集整理关于sql server在结果中查询的相关议题,使用内容导航快速到达。
内容导航:
Q1:sqlserver 存储过程将查询结果给变量
declare @name varchar(50)
select @name=name from Student where sid=@sid
--请注意,确保查询出的数据是单行
Www.&yIjItao.coM
Q2:sqlserver 如何将查询结果导出到excel中
把查询的结果插入到表中,然后用导入到出中选择,不懂再问我
Q3:sqlserver用sql语句查询结果插入到新的数据库中
可以这样子写
先写一个自定义函数
createfunction cre_funcation(@a int)
returns varchar(2000)
as
begin
declare @str varchar(2000)
set @str=
select @str=@str+,+rtrim(a.b) from test a
where a.a=@a
if len(@str)>0
begin
set @str=right(@str,len(@str)-1)
end
else
begin
set @str=无
end
return @str
end
表A的字段分别为a和B,我写的测试表名为test,如果有必要你自己改一下
表B的字段也为A和B
这个自定义函数的功能是传入一个A表中的第一个字段的唯一值,得到表A中所有分组相同的一行值
再用一个游标,从A表中查询出不同的字段1、用这个函数即可手稿到表B中
再用游标插入
DECLARE @a int--申明一个变量,用来记录A表中的唯一A列
DECLARE cur CURSOR FOR
SELECT distinct a
FROM test
OPEN cur
FETCH NEXT FROM cur
INTO @a
WHILE @@FETCH_STATUS = 0
BEGIN
--往B表中插入组合后的东西,关键就是用到刚才写的那个函数
insert into b
select @a,dbo.cre_funcation(@a)FETCH NEXT FROM cur
INTO @a
END
CLOSE cur
DEALLOCATE cur
如果你的B表结构也是A,B字段,则就可以了,请自建我的那两个测试表
插入B表还有一种方法
首先把A表中的唯一第一列手稿一个临时表
select distinct a into #tmp from test
--再这样
insert into b
select a,dbo.cre_funcation(a) from #tmp
这样就插入入
你再查一下B表就可以看到结果了
select * from b
Q4:sqlserver 在查询结果中统计相同行的行数
select ID, count(*) as Count from tab group by ID order by ID asc
wWw.YijItao.Co☆m
Q5:sql server 中用一段语句得到的查询结果 能不能被作为一个新表继续对它进行查询操作
可以。
使用SQL嵌套的方式,比如:
select * from (select * from talbe where a=b) where a>c;
当时若select * from talbe where a=b里面的资料较多,查询又比较复杂,嵌套后执行速度会大打折扣,此时建议使用临时表或视图的方式解决。
Q6:如何把SqlServer查询的结果生成excel-CSDN论坛
这个用导出的功能不行的,它会把所有的数据全导到excel的第一列中,可以说没有使用价值的另一个方法是复制,应为默认的复制是不复制表头的,你只要把
工具--》选项---》查询结果--》SQL server下面的以文字显示 和以方格显示的 里有个****显示表头(就是让表头显示)都选中,点确定,以后复制结果时就有表头了!wWw.yijiTao..cOm
Q7:sqlserver 清除查询结果中的重复数据?
没有你的表结构用嵌套试试