zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    数据结构~线性表
    JQuery一行搞定当前面所对应的导航菜单变亮效果
    数据结构~二叉树
    MVC工作中的笔记~1(架构师是一步一步练成的)
    数据结构~链表
    java中文转拼音
    Bitmap旋转和缩放
    老师们都是这样计算毕业设计分数的
    Mysql ERROR 1040 (HY000): Too many connections
    统计没有使用绑定变量的sql语句
  • 原文地址:https://www.cnblogs.com/maiweibiao/p/2158967.html
Copyright © 2011-2022 走看看