sql server如何用print语句输出查询结果
得到了一个元组,现在我想在SQL SERVER中用print将这元组的两个属性输出,请问应该怎么做?
如果元组有多个呢,又应怎么做?
我是初学者,请高手指点指点。
假如我有两个或多个元组呢,比如select number,name from student where sex='F'得到的是全部女生的,我如果想输出其中第5行的,怎么办? 展开
1、可以使用如下程序将元组的多个属性输出
DECLARE @t1 NVARCHAR(100) --声明一个变量,接收查询结果值。
SELECT @t1=com_name FROM com WHERE cust_id='20100001' --查询
PRINT @t1 --输出结果值。
SELECT @t1=com_name FROM com WHERE cust_id='1405892'
PRINT @t1
SELECT @t1=com_name FROM com WHERE cust_id='569454'
PRINT @t1
SELECT @t1=com_name FROM com WHERE cust_id='647328'
PRINT @t1
SELECT @t1=com_name FROM com WHERE cust_id='1221889'
PRINT @t1
SELECT @t1=com_name FROM com WHERE cust_id='1255607'
PRINT @t1
2、--向上边的批量select查询,用print输出后,在消息中,还能查看结果。如果不用print,就需要一个一个的复制查询结果。
3、--上边的语句,是在excel和word中拼接和替换值,得到的批量查询语句。
扩展资料:
1、不带输出项的print即为输出一个空行,如果之前的print语句输猛逗出项的最后用“,”或“;”,则表示其输出是在同一行上。其后面的空的print语句用来消除前面的print语句一直在同一行上输出的效果,使其后面的输出是在下一行。
Print()
功能
以当前字体在打开的打印作业中打印一行或多行文本。
语法Print(printjobnumber,{tab1,}string{,tab2})
例如用在编程中:
定义一个整型数组,将50个随机的两位正整数从下标1开始放入该数组中,求出该数组中具有偶数值的偶数下标元素之和,同时输出该数组中所有元素的值,每行输出10个值。
dim a(50) as integer
dim i,s as integer
randomize
s=0
for i=1 to 50
a(i)=int(rnd()*99)+1
if a(i) mod 2=0 then s=s+i
next i
print "s=";s
for i=1 to 50
print a(i);
if i mod 10=0 then print
next i
2、SQL中Print语句用于调试,所以,它输出的内容属于调试信息,类似于出错信息。
3、在不同的编程中,获取调试信息的,方法不同。此外,很少有人用Print作正常的输出,当然,在调试过程中用除外。要输出时,一般用Select语句来得方便一些。多组信息升坦需要输出时,先生成一个临时表,然后向临时表添加,最后把总的临时表枝笑卖数据向前端推送即可。
参考资料:Print #_百度百科
如果一定要print,那么这样吧:
delcare @number int
declare @course nvarchar(30) --for example
select @number=number,@course=course from choice where studentnumber = '20100001'
print @number
print @course
这是楼上的朋友的哗搏劳动成果,望勿见怪
如果一悔芦消定要PRINT全部的,那么用游标吧:
declare @info varchar(200)
declare @curs cursor
set @curs=cursor scroll dynamic
for
select 'number='+convert(varchar(20),number)+'; course='+convert(varchar(20),course) from choice where sex='F'
open @curs
fetch next from @curs into @info
while(@@fetch_status=0)
begin
print @info
fetch next from @curs into @info
end
如果一定要print,那么这样吧:
delcare @number int
declare @course nvarchar(30) --for example
select @number=number,@course=course from choice where studentnumber = '20100001'
print @number
print @course
这是楼上的朋友的哗搏劳动成果,望勿见怪
如果一悔芦消定要PRINT全部的,那么用游标吧:
declare @info varchar(200)
declare @curs cursor
set @curs=cursor scroll dynamic
for
select 'number='+convert(varchar(20),number)+'; course='+convert(varchar(20),course) from choice where sex='F'
open @curs
fetch next from @curs into @info
while(@@fetch_status=0)
begin
print @info
fetch next from @curs into @info
end
declare @course nvarchar(30) --for example
select @number=number,@course=course from choice where studentnumber = '散告高20100001'冲尺友祥
print @number
print @course
go
from(
select top 5 number,name from student where sex='念雹销肆棚F'仔游
) a
order by ... desc