SQL语句,字段表里某列数据变为用逗号分隔的字符串
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL语句,字段表里某列数据变为用逗号分隔的字符串相关的知识,希望对你有一定的参考价值。
SQL语句,字段表里某列数据变为用逗号分隔的字符串形式。 select a from A
a
我
你
他
把最后的值变为‘我,你,他’
最后将合并 的值输出。 参考技术B 很简单
SELECT wmsys.wm_concat(a)
FROM A本回答被提问者采纳 参考技术C sqlserver2005以上版本
select stuff((select ','+a from a for xml path('')),1,1,'') 参考技术D 我,你,他 是3条记录吗?追问
不是,任意的,根据某些条件,查找出了一些数据,然后把这几个数据变为用逗号分隔开的一个字符串。这样可以当数据存入其他表里
追答declare @string varchar(100)
set @string=''
select @string=@string+','+cast(字段名 as varchar) from 表名 order by id;
select STUFF(@string,1,1,'')
怎样用sql语句取表里第n条记录的数据啊(用Delphi实现)
谢谢大家的回答
是Access数据库
xuyucheng26 的方法不能取具体第几条记录的数据
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add("SELECT * FROM 表名");
ADOQuery1.Open;
While ADOQuery1.Eof
begin
str:=ADOQuery1.FieldByName('字段名称').AsString;
ADOQuery1.Next;
end;
取具体第几条记录的数据:
记录数 n :=ADOQuery1.RecordCount;
在 While 中加你指定的条件即可. 参考技术A 这个好办,我们假定从Table的表中取第n条记录,同时假定表TableA的内码为:Internalid,则可得出如下查询
Select top n from TableA where Internalid not in (Select top n-1 from tableA) 参考技术B 要看是什么数据库,oracle可用rownum比较简单。
以上是关于SQL语句,字段表里某列数据变为用逗号分隔的字符串的主要内容,如果未能解决你的问题,请参考以下文章