• FOR XML PATH应用之用一条SQL语句横向合并结果行


    合并前结果集:

    id FType FName
    1  水果类   苹果
    2  水果类   香蕉
    3  水果类   雪梨
    4  水果类   西瓜
    5  水果类   荔枝
    6  水果类   柚子
    7  交通类   公车
    8  交通类   地铁
    9  交通类   动车
    10 交通类   火车
    11 交通类   汽车
    12 交通类   轮船
    13 动物类   小猫
    14 动物类   小狗
    15 动物类   兔子
    16 动物类   小鸟

    合并后结果集:

    FType   FName
    动物类   小猫、小狗、兔子、小鸟
    交通类   公车、地铁、动车、火车、汽车、轮船
    水果类   苹果、香蕉、雪梨、西瓜、荔枝、柚子

    第一步:建立测试环境

    if exists (select * from sysobjects where id = OBJECT_ID('[tbFruit]') and OBJECTPROPERTY(id, 'IsUserTable') = 1) 
    DROP TABLE [tbFruit]

    CREATE TABLE [tbFruit] (
    id
    int IDENTITY (1, 1) NOT NULL,
    FType
    nvarchar(50) null,
    FName
    nvarchar(50) NULL
    )


    INSERT [tbFruit] (FType,[FName]) VALUES ('水果类', '苹果')
    INSERT [tbFruit] (FType,[FName]) VALUES ( '水果类','香蕉')
    INSERT [tbFruit] (FType,[FName]) VALUES ('水果类', '雪梨')
    INSERT [tbFruit] (FType,[FName]) VALUES ( '水果类','西瓜')
    INSERT [tbFruit] (FType,[FName]) VALUES ('水果类', '荔枝')
    INSERT [tbFruit] (FType,[FName]) VALUES ( '水果类','柚子')

    INSERT [tbFruit] (FType,[FName]) VALUES ('交通类', '公车')
    INSERT [tbFruit] (FType,[FName]) VALUES ( '交通类','地铁')
    INSERT [tbFruit] (FType,[FName]) VALUES ('交通类', '动车')
    INSERT [tbFruit] (FType,[FName]) VALUES ( '交通类','火车')
    INSERT [tbFruit] (FType,[FName]) VALUES ('交通类', '汽车')
    INSERT [tbFruit] (FType,[FName]) VALUES ( '交通类','轮船')

    INSERT [tbFruit] (FType,[FName]) VALUES ('动物类', '小猫')
    INSERT [tbFruit] (FType,[FName]) VALUES ('动物类', '小狗')
    INSERT [tbFruit] (FType,[FName]) VALUES ('动物类', '兔子')
    INSERT [tbFruit] (FType,[FName]) VALUES ('动物类', '小鸟')

    SELECT * FROM [tbFruit]

    第二步:获取结果

    SELECT  B.FType,LEFT(FName,LEN(FName)-1) as FName FROM (
    SELECT distinct FType,
    (
    SELECT FName+'' FROM tbFruit WHERE FType=A.FType FOR XML PATH('')) AS FName
    FROM tbFruit A
    ) B

  • 相关阅读:
    bzoj 2763: [JLOI2011]飞行路线
    bzoj 2761: [JLOI2011]不重复数字
    bzoj 2744: [HEOI2012]朋友圈
    bzoj 2743: [HEOI2012]采花
    bzoj 2730: [HNOI2012]矿场搭建
    bzoj 2705: [SDOI2012]Longge的问题
    抗DDOS攻击
    kali安装后配置
    Kali更新源,亲测目前可用的源
    kali安装及配置ssr客户端
  • 原文地址:https://www.cnblogs.com/maiweibiao/p/2158967.html
Copyright © 2020-2023  润新知