CREATE TABLE DEPT

(DeptNo INT IDENTITY(1, 1)NOT NULL ,
 Country VARCHAR(50) ,
 Location VARCHAR(50) NULL
)
 
SET IDENTITY_INSERT DEPT ON
INSERT  DEPT( DeptNo, Country, Location )VALUES  ( 1, 'User1', 'A' )
INSERT  DEPT( DeptNo, Country, Location )VALUES  ( 2, 'User1', 'B' )
INSERT  DEPT( DeptNo, Country, Location )VALUES  ( 3, 'User2', 'C' )
INSERT  DEPT( DeptNo, Country, Location )VALUES  ( 4, 'User2', 'D' )
INSERT  DEPT( DeptNo, Country, Location )VALUES  ( 5, 'User2', 'E' )
INSERT  DEPT( DeptNo, Country, Location )VALUES  ( 6, 'User3', 'F' )
INSERT  DEPT( DeptNo, Country, Location )VALUES  ( 7, 'User3', 'G' )
INSERT  DEPT( DeptNo, Country, Location )VALUES  ( 8, 'User3', 'H' )
INSERT  DEPT( DeptNo, Country, Location )VALUES  ( 9, 'User3', 'I' )
SET IDENTITY_INSERT DEPT OFF
 
--按某一列出结果的
SELECT  B.Country ,LEFT(Location, LEN(Location) - 1) AS list
FROM    ( SELECT    Country ,
                            ( SELECT Location + ',' FROM DEPT WHERE Country = A.Country ORDER BY  DeptNo FOR XML PATH('')
                            ) AS Location
          FROM DEPT A GROUP BY  Country
        ) B

【收藏】SQL多行变一列的更多相关文章

  1. SQL多行变一列

    CREATE TABLE DEPT (DeptNo INT IDENTITY(1, 1)NOT NULL ,  Country VARCHAR(50) ,  Location VARCHAR(50) ...

  2. Oracle 多行变一列的方法

    多行变一列的方法有很多,觉得这个第一眼看懂了当时就用的这个办法. 情况是这样的.以下数据前几列是一样的,需要把VAT_VALUE_CHAR 的值放在同一行上. SELECT * FROM ps_vat ...

  3. SQL多行转多列

    --★转换结果如上图 1.首先创建表: CREATE TABLE [成绩表]( ,) NOT NULL, )NULL, , )NULL, , )NULL, , )NULL ) ON [PRIMARY] ...

  4. sql 多行转多列,多行转一列合并数据,列转行

    下面又是一种详解:

  5. sql多行合并一列

    with a as( select * from( select 1 userId , '天津' province union select 1 userId , '北京' union select ...

  6. mysql 行变列(多行变成一行/多行合并成一行/多行合并成多列/合并行)

    数据库结构如图: 而我想让同一个人的不同成绩变成此人在这一行不同列上显示出来,此时分为2中展现: 第一种展现如图----[多行变一列](合并后的数据在同一列上): sql如下: select name ...

  7. MYSQL 多行转多列

    mysql 行变列(多行变成一行/多行合并成一行/多行合并成多列/合并行),我觉得这都是一个意思 数据库结构如图: 而我想让同一个人的不同成绩变成此人在这一行不同列上显示出来,此时分为2中展现: 第一 ...

  8. Oracle之多行记录变一行记录,行变列,并排序(wmsys.wm_concat)

    原帖:http://www.cnblogs.com/nayitian/p/3231734.html wmsys.wm_concat Definition: The Oracle PL/SQL WM_C ...

  9. mysql 中实现行变列

    前言: mysql行列变化,最难的就是将多个列变成多行,使用的比较多的是统计学中行变列,列变行,没有找到现成的函数或者语句,所以自己写了存储过程,使用动态sql来实现,应用业务场景,用户每个月都有使用 ...

随机推荐

  1. 如何设计Spring读取某种文件的逻辑顺序

    1. 判断系统属性System.getProperty("apdb.config.path", "");,有的话,优先使用.(系统属性可以在命令行中以 -D&l ...

  2. kubernetes rabbitmq 集群安装配置

    生成secret来保存relang-cookie: secret.yml文件: apiVersion: v1kind: Secretmetadata: name: rabbit-cookietype: ...

  3. 88. Merge Sorted Array(从后向前复制)

    Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note:Yo ...

  4. hdu6194 string string string

    地址:http://acm.split.hdu.edu.cn/showproblem.php?pid=6194 题目: string string string Time Limit: 2000/10 ...

  5. error LNK2038: 检测到“_MSC_VER”的不匹配项: 值“1600”不匹配值“1700”

    原因:由于你使用了vs2012,相比较vs2010以及之前的vs为更高版本,致使msvc不兼容! 方法:在项目右键属性-配置属性-常规中,平台工具集选用为合适平台即可,我这里就选择 vs2010 (v ...

  6. Akka in action (第一章 介绍Akka)

    在本章 概述Akka 了解Actors和Actor系统 Akka的适用范围 在第一章中,会介绍给你Akk的个方面,它能做什么,与现有的解决方案有那些不同.重点关注Akka有哪些功能和使用范围和强大的并 ...

  7. $Python技巧大全

    知乎上有一个问题:Python 有什么奇技淫巧?其中有各种不按套路出牌的招数,也不乏一些惊为天人的"奇技淫巧",会让你大呼:居然还有这种操作??? 本文就是对日常使用过的或者觉得很 ...

  8. NIO 02 (转)

    本文转自:http://weixiaolu.iteye.com/blog/1479656 SelectionKey.OP_ACCEPT // 服务端监听,并注册OP_ACCEPT事件后,就已准备好接受 ...

  9. 使用selenium前学习HTML介绍

    <!-- HTML 是用来描述网页的一种语言. HTML 指的是超文本标记语言 (Hyper Text Markup Language) HTML 不是一种编程语言,而是一种标记语言 (mark ...

  10. Ubuntu16.04 sever 安装

    插入U盘,开机有两个USB启动方式(传统模式和UEFI模式): 启动快速,我选择了UEFI模式,跳过BIOS初始化. 用启动盘成功引导之后,出现下面的界面 选择安装语言:中文(简体) 默认第一项:安装 ...