在做一些数据分析与数据展示时,经常会遇到行转列,列转行的需求,今天就来总结下: 在开始之前,先来创建一个临时表,并且写入一些测试数据: /* 第一步:创建临时表结构 */ CREATE TABLE #Student --创建临时表 ( StuName nvarchar(20), --学生名称 Stu ...
分类:
数据库 时间:
2019-06-15 15:27:03
阅读次数:
1167
SQL Server中有提供一个FOR XML PATH的子句(不知道能不能叫函数),用来将查询结果行输出成XML格式,我们可以通过这个语法做一些变通实现一些特定的功能,比如说行转列。要会变通的话,当然首先是要知道FOR XML PATH的语法。 FOR XML PATH的简单语法 假设有一个hob ...
分类:
数据库 时间:
2019-06-15 11:50:45
阅读次数:
367
一、行转列即将原本同一列下多行的不同内容作为多个字段,输出对应内容。建表语句DROP TABLE IF EXISTS tb_score; CREATE TABLE tb_score( id INT(11) NOT NULL auto_increment, userid VARCHAR(20) NOT ...
分类:
数据库 时间:
2019-05-24 12:43:30
阅读次数:
111
1、行转列一般通过case when语句来实现。 2、列转行,主要是通过UNION ALL,MAX来实现 ...
分类:
数据库 时间:
2019-05-18 20:27:45
阅读次数:
153
1.简单案例 create database Hang go use Hang create table Students ( Name varchar(50), Kemu varchar(50), sor int ) insert into Students values('张三','语文',88 ...
分类:
数据库 时间:
2019-04-29 12:42:54
阅读次数:
174
行转列: select t.*, t.rowid from TEST1 t ID C1 C2 C3 1 小红 数学 10 2 小红 语文 20 3 小栏 数学 15 4 小栏 语文 25 --test1 SELECT C1,to_char(WM_CONCAT(C2)) c2 FROM TEST1 g ...
分类:
其他好文 时间:
2019-04-28 18:57:31
阅读次数:
152
一、行转列 有如图所示的表,现在希望查询的结果将行转成列 建表语句如下: 查询语句: 此处用之所以用MAX是为了将无数据的点设为0,防止出现NULL 结果展示: 二、列转行 有如图所示的表,现在希望查询的结果将列成行 建表语句如下: 查询语句: 结果展示: ...
分类:
数据库 时间:
2019-04-02 16:56:36
阅读次数:
1106
列转行:利用max(case when then),不转行的列作为group by 的条件 合并字段显示:利用group_cancat(course,”:”,”score”) 不过行转列用decode()也行 DECODE与MAX的联合使用 ...
分类:
其他好文 时间:
2019-03-14 20:08:32
阅读次数:
201
sql的行转列(PIVOT)与列转行(UNPIVOT) 在做数据统计的时候,行转列,列转行是经常碰到的问题。case when方式太麻烦了,而且可扩展性不强,可以使用 PIVOT,UNPIVOT比较快速实现行转列,列转行,而且可扩展性强 一、行转列 1、测试数据准备 CREATE TABLE [St ...
分类:
数据库 时间:
2019-03-14 20:02:58
阅读次数:
200
一、知识梳理1.1、背景表结构1.1.1、order by1.1.2、sort by1.1.3、distribute by1.1.4、cluster by1.2、行转列、列转行(UDAF 与 UDTF)1.2.1、行转列1.2.2、列转行1.3、建表时的数组操作1.4、orc 存储1.5、Hive ...
分类:
其他好文 时间:
2019-03-03 09:41:48
阅读次数:
209