• SQL 行转字符串,其中字符串是用逗号分开的字段


       一、行转字符串,用逗号分开

      1、记录显示为字符串,用逗号分开:
    SELECT 字段+',' FROM 表名 FOR XML PATH('')
    2、分组将记录显示为字符串,每个字符串用逗号分开

                select 分组字段,STUFF((select ','+字段 from 表 a where a.分组字段=表.分组字段 for XML PATH('')),1,1,'')

                   from 表
                  group by 分组字段

     

    实例:

    1、表结构
    create table tb(id int, value varchar(10)) insert into tb values(1, 'aa') insert into tb values(1, 'bb') insert into tb values(2, 'aaa') insert into tb values(2, 'bbb') insert into tb values(2, 'ccc') insert into tb values(3, 'ddd') insert into tb values(3, 'fff')

    2、表内容

                   

    3、实现语句

         select id,STUFF((SELECT ','+VALUE FROM tb a WHERE a.id=tb.id for XML PATH('')),1,1,'' ) value from tb group by ID

    4、查询结果

           

                                                                                                         

  • 相关阅读:
    Aizu 0525 Osenbei 搜索 A
    PAT 1088 三人行 模拟,坑 C
    POJ1862 Stripies 贪心 B
    ZOJ 4109 Welcome Party 并查集+优先队列+bfs
    POJ 3685 Matrix
    POJ 3579 Median 二分加判断
    Educational Codeforces Round 63 D. Beautiful Array
    Codeforces Round #553 (Div. 2) C
    HDU 5289
    Codeforces 552 E. Two Teams
  • 原文地址:https://www.cnblogs.com/yclizq/p/12118177.html
Copyright © 2020-2023  润新知