星空网 > 软件开发 > 数据库

SQL拼接字段数据

查询语句:

SELECT STUFF(  (    SELECT     ',' + --分隔符 
     KeyID --查询字段 FROM #tmp --查询数据表 WITH(NOLOCK) WHERE 1=1 --查询条件 FOR '') ), 1,-- 0:NULL 1:原样输出 2++:首位添加分隔符 1,-- N:截取 N - Len 的字符 ''-- 在字符串首尾添加的符号)

测试语句:

IF EXISTS(SELECT * FROM tempdb..sysobjects where id=object_id('tempdb..#tmp')) --判断临时表【#tmp】是否存在BEGIN  DROP TABLE #tmp --删除临时表ENDCREATE TABLE #tmp --创建临时表(  KeyID VARCHAR(36),  KeyValue VARCHAR(max))--项临时表插入测试数据INSERT INTO #tmp VALUES(newid(),'数据一')INSERT INTO #tmp VALUES(newid(),'数据二')--查询语句--单个字段SELECT STUFF(  (    SELECT     ',' + --分隔符    KeyID --查询字段    FROM #tmp --查询数据表    WITH(NOLOCK)     WHERE 1=1 --查询条件    FOR '')  ),  1,-- 0:NULL 1:原样输出 2++:首位添加分隔符  1,-- N:截取 N - Len 的字符  ''-- 在字符串首尾添加的符号)/*--多字段组合SELECT STUFF(  (    SELECT     ',KeyID:'+ KeyID + ';KeyValue:' + KeyValue --查询字段    FROM #tmp --查询数据表    WITH(NOLOCK)     WHERE 1=1 --查询条件    FOR */

 查询结果(注:具体结果由自动生成的KeyID决定):

单字段:1B0EC911-5C2B-4FDE-87BB-62981DE2030D,0527DF18-9EDD-484D-B770-B24B13C68CA1

多字段组合:KeyID:33C28B1E-3F75-4119-A944-1DB7541088E0;KeyValue:数据一,KeyID:4ECF1696-7DB6-43C7-8182-22EEF676E2CF;KeyValue:数据

 说明:

数据库表与临时表查询方式一样,替换表和字段即可,谢谢。

 




原标题:SQL拼接字段数据

关键词:sql

sql
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流