SQL 查询表的值以字符串的形式返回

数据库MicrosoftSQLServer表t,字段a,其值有1,2,3,4,5.。。。a12345...现在要用sql语句查出字段a的值,并以字符串的形式还回如:1,2... 数据库Microsoft SQL Server

表t,字段a,其值有1,2,3,4,5.。。。
a
1
2
3
4
5
...

现在要用sql语句查出字段a的值,并以字符串的形式还回如:1,2,3,4,5(中间以逗号分隔)
即结果只查询出一行一列,值为1,2,3,4,5
展开
 我来答
198901245631
推荐于2017-09-20 · TA获得超过3.5万个赞
知道大有可为答主
回答量:9037
采纳率:92%
帮助的人:1735万
展开全部
可以直接在数值前面添加一个“空”就可以了。
sql:select ''||id from tablename where tablename.age>20;
解释:“||”是oracle中的专用连接符,前面加上一个“空”,这样就直接转换成字符串形式返回了。
loveyurui
2009-10-19 · TA获得超过6557个赞
知道大有可为答主
回答量:2892
采纳率:33%
帮助的人:994万
展开全部
如果是oracle10g以上就好了
简单的一句 select wm_concat(a) from table;就行了
如果不是,最好用过程或者函数什么的吧 用sql有点难度。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
whxright
2009-10-19 · TA获得超过139个赞
知道答主
回答量:47
采纳率:0%
帮助的人:61.4万
展开全部
有难度,想不到
这样的处理最好放在代码里做不要在Sql上做,代码里实现比较简单循环取值即可
楼主加油
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
带我信乐
推荐于2017-09-16 · TA获得超过1353个赞
知道小有建树答主
回答量:680
采纳率:0%
帮助的人:718万
展开全部
定义变量拼接

create table t (a varchar(10))
insert t select '1'
insert t select '2'
insert t select '3'
insert t select '4'
insert t select '5'
insert t select '6'
insert t select '7'
insert t select '8'

--以下语句一起运行
DECLARE @S VARCHAR(8000)
SET @S=''
SELECT @S = @S +','+a
FROM t

SELECT SUBSTRING(@S,2,LEN(@S))
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式