学习使用PIVOT

Power Pivot学习 一、DAX的认识 DAX的智能感知 2.DAX相关函数 相关函数用法: 二、 KPI认识 总结:KPI就是根据业绩的完成率来设置的,在做KPI前,先找到业务的完成率。 ... 阅读详情

假设有这样的一个需求:

有一个表中存储了某个部门的各个员工的每一年的各类薪金,
记录存储格式如:
 员工姓名 薪金数目 薪金种类 年份

现在要求根据员工的姓名进行查询,查询出某些员工各个年份的薪金总数,出来的结果要求
 ColumnName:  年份 员工1姓名 员工2姓名 ...
 ColumnValue: 年份 薪金总数 薪金总数

这个时候使用PIVOT来进行将行转换了列,操作就变得很方便,而由于PIVOT是静态的列,所以要使其起到动态的效果,只有用SQL拼接的方法实现,如

  1. -- Test Data
  2. IF OBJECT_ID('TEMPDB..#T_Money') IS NOT NULL
  3. BEGIN
  4.     DROP TABLE #T_Money
  5.     PRINT 'Drop Complate.'
  6. END
  7. Create Table #T_Money
  8. (
  9.     [ID]            INT             NULL,
  10.     [Name]          NVARCHAR(256)   NULL,
  11.     [Money]         Money           NULL,
  12.     [Type]          NVARCHAR(128)   NULL,
  13.     [Year]          INT             NULL
  14. );
  15. INSERT INTO #T_Money VALUES(1,N'小斌',15000,N'月薪',2007);
  16. INSERT INTO #T_Money VALUES(2,N'小斌',5000,N'奖金',2007);
  17. INSERT INTO #T_Money VALUES(3,N'小斌',20000,N'月薪',2008);
  18. INSERT INTO #T_Money VALUES(4,N'小斌',10000,N'奖金',2008);
  19. INSERT INTO #T_Money VALUES(5,N'小珍',5000,N'月薪',2007);
  20. INSERT INTO #T_Money VALUES(6,N'小珍',5000,N'奖金',2007);
  21. INSERT INTO #T_Money VALUES(7,N'小珍',10000,N'月薪',2008);
  22. INSERT INTO #T_Money VALUES(8,N'小珍',5000,N'奖金',2008);
  23. -- Unite SQL
  24. DECLARE @Names AS NVARCHAR(2048);
  25. WITH T_NAMES AS
  26. (
  27.     SELECT DISTINCT
  28.         [Name]
  29.     FROM
  30.         #T_Money
  31. )
  32. SELECT
  33.     @Names = ISNULL(@Names + N',[', '[' ) 
  34.                 + CAST(Name AS NVARCHAR(256))
  35.                 + ']'
  36. FROM
  37.     T_NAMES
  38. WHERE
  39.     Name LIKE N'%斌%';
  40. PRINT @Names;
  41. DECLARE @SQL NVARCHAR(MAX);
  42. SET @SQL = N'
  43.             SELECT 
  44.                 * 
  45.             FROM 
  46.             (
  47.                 SELECT 
  48.                     [Name]
  49.                     ,[Money]
  50.                     ,[Year]
  51.                 FROM
  52.                     #T_Money
  53.             ) AS Tmp_PIV
  54.             PIVOT
  55.             (
  56.                 SUM(Money)
  57.                 FOR [Name] IN (' + @Names + ')
  58.             ) AS Tmp_Money
  59.             Order By 
  60.                 Year';
  61. PRINT @SQL;
  62. EXEC sp_executesql @SQL;

结果如:

Excel Power Pivot数据分析学习(一) 能够处理大规模数据,支持 DAX 语言,可以进行复杂的计算和度量值创建,可以与 Power BI 等工具集成,支持更广泛的数据共享和协作。基于数据透视表复制的透视图,复制的图和原来使用一样的透视筛选,改变其中任意一个,另一个都会随之改变。【背景】现有一张用户表(含年龄和用户id)和一张消费表(含用户id,消费金额,和订单数)search (“字符”,[字段],开始位置) ——字符在字段中的位置,开始位置可选。mid([字段列名],开始字符的位置,截取字符长度)——中段截取字符。 阅读详情

相关推荐

Vue Pivottable-基于jQuery的PivotTable.js的Vue端口-Vue.js开发

Vue Pivottable这是基于jQuery的PivotTable.js Live Demo链接的Vue端口。运行演示$ git clone https://github.com/Seungwoo321/vue-pivottable.gi Vue Pivottable这是基于jQuery的Vue端口PivotTable.js实时演示链接运行演示$ git clone https://github.com/Seungwoo321/vue-pivottable.git $ cd vue-pivottable / demo / example-vue-cli3 / $ npm install $ npm run serve安装npm i vue-pivottable全局组件用法main.js从“ vue”导入Vue从“ vue-pivottable”导入VuePivottable导入“ vue-pivottable / dist / vue-pivottable.css” Vue.use(VuePivottable)vue模板vue-pivottable

探索数据的新维度:Vue-Pivot-Table 拓展你的数据分析视野

探索数据的新维度:Vue-Pivot-Table 拓展你的数据分析视野 项目地址:https://gitcode.com/gh_mirrors/vu/vue-pivot-table 在数据驱动的时代,每个开发者和分析师都需要强大而灵活的工具来揭示数据背后的模式与趋势。虽然 Vue-Pivot-Table 目前处于非维护状态,但它依旧是一个值得探索的开源宝藏,特别是对于那些寻找轻量级、易集成到Vue...

gitblog_00079的博客 1763

vue-pivot-table-数据透视表的vue组件-Vue.js开发

vue-pivot-table数据透视表Live演示(jsfiddle)的vue组件安装npm install --save @ marketconnect / vue-pivot-table组件此项目vue-pivot-table数据透视表Live演示(jsfiddle)的vue组件npm install --save @ marketconnect / vue-pivot-table组件此项目提供2个组件:数据透视表:具有拖放用户界面的聚合表,用于配置行/列数据透视表:仅聚合表尽管数据透视表组件提供了完整的体验,但如果只需要一个表,则可以单独使用数据透视表。 浏览器Vue.use(VuePivot)Webpack Pivot Javascript导入Pivot

【亲测免费】 Vue Pivot Table 使用教程

Vue Pivot Table 是一个基于 Vue.js 的开源项目,旨在提供一个灵活的数据透视表组件。该组件允许用户通过拖放的方式对数据进行分组、聚合和展示,非常适合用于数据分析和报表生成。Vue Pivot Table 的设计理念是简单易用,同时提供丰富的自定义选项,以满足不同场景的需求。 ## 项目快速启动 ### 安装 首先,你需要在你的 Vue.js 项目中安装 Vue Pivot...

gitblog_01020的博客 1674

全在这了!全国分省90米、30米、12.5米、5米DEM高程模型数据下载方式汇总

全在这了!全国分省90米、30米、12.5米、5米DEM高程模型数据下载方式汇总 SRTM15(450米)免费下载 https://pan.baidu.com/s/1eO0U6wfzs7YSe2EQdxRJ2Q提取码:o7am GMTED(250米)免费下载 https://pan.baidu.com/share/init?surl=nrbbdbhyNVQV46XwqzqLlg 提取码:V7X9 SRTM3 (90米)免费下载 https://pan.baidu.com/share/..

TuxinyunGIS的博客 1万+

ESP32 CAM使用教程(入门级)

串口被占用,可以关闭其他使用到串口的界面;先将手机也连上wifi,然后使用手机浏览器打开这个IP地址,注意手机连接的wifi需要和开发板的wifi一致,也就是程序里自己修改的那个wifi,否则无法打开IP地址;将开发板连接到电脑,点击点击工具→端口,然后选择自己实际接的COM口,不清楚COM口的可以打开电脑设备管理器查看一下,插拔设备看看哪个COM口会刷新就是哪个COM口;安装好esp32库之后,点击工具→开发板→esp32→AI Thinker ESP32-CAM,型号要仔细找找,不要选错了;

qq_34426854的博客 2万+

【亲测免费】 Vue Pivot Table 项目常见问题解决方案

Vue Pivot Table 是一个用于创建数据透视表的 Vue 组件。它提供了两个主要组件:`Pivot` 和 `PivotTable`。`Pivot` 组件提供了一个完整的交互式界面,允许用户通过拖放操作配置行和列。而 `PivotTable` 组件则是一个简单的聚合表,适用于只需要表格而不需要交互界面的场景。 该项目的主要编程语言是 JavaScript,并且它是基于 Vue.js 框架...

gitblog_07071的博客 703

OpenGL绘制简单场景,实现旋转缩放平移和灯光效果

本项目实现了用OpenGL绘制一个简单场景,包含正方体、球体和网格,实现了物体的旋转、缩放、平移和灯光效果。附有项目完整代码,有详细注释。适合初学者熟悉opengl使用。

张竞成的博客 1万+

【亲测免费】 Vue Pivot Table 项目推荐

Vue Pivot Table 是一个基于 Vue.js 的开源项目,旨在提供一个灵活且易于使用的数据透视表组件。该项目的主要编程语言是 JavaScript,并且它充分利用了 Vue.js 的响应式特性和组件化架构,使得开发者可以轻松地将数据透视表集成到他们的 Vue 应用中。 ## 项目核心功能 Vue Pivot Table 提供了以下核心功能: 1. **数据透视表组件**:项目提供...

gitblog_07068的博客 442

采用LM324输出方波、正弦波、三角波

介绍以LM324运放芯片为核心,设计电路连接,实现三角波转化为正弦波,再由正弦波转化为方波输出的简易函数信号发生器的基本功能。本文介绍通过使用NI Multisim 14.0软件仿真模拟搭建所设计的电路,再使用这个软件的示波器进行仿真输出三角波,正弦波,方波。使用软件进行仿真后再到实验室进行调试,将其接入电源,并通过在显示器上观察波形以及数据,得到结果。该电路结构简单,信号的幅度、频率等参数可调,在仿真软件和实验室检测都有较好的性能输出,可替代实验室标准的函数信号发生器完成一般的实验要求。

qq_48771816的博客 7万+

中国IP发展之面面观

谢学军/邱善勤2006-1-25 9:29:28电子经理世界       IP远没有我们当初想象的那么简单   当SoC设计方法学刚刚传到国内的时候,学界为之欢呼雀跃,由于IP/SoC设计技术的使用,可以将发达国家用几年甚至十几年积累起来的设计技术直接为我所用,使中国的集成电路跳过漫长的积累阶段,迅速站到较高的起点上。因此在当时看来,IP/SoC设计技术是我国提升设计水平、发展

klxdmm305的专栏 1188

人工智能学习21-Pandas-pivot_table

人工智能学习21-Pandas-pivot_table

qixiang_chen的博客 284

Cadence Allegro 17.4学习记录开始02-原理图Capture CIS 17.4

Allegro的第一方网表与第三方网表有以下几个区别点;Ø 与Allegro实现交互式操作的是第一方网表,第三方网表时不可以实现交互式操作;Ø 第三方网表不能将器件的Value属性导入到PCB中,输出时以封装属性来代替Value属性,第一方网表是可以的;Ø 网表导入到PCB中时,第三方的网表需要指定事先指定好PCB封装库文件,并产生Device文件,才可以将网表导入到PCB中,第一方网表则可以直接导入。

qq_31444421的博客 1万+

for oracle中pivot_Oracle Pivot学习心得

今天在做一个查询报表需要将多行的查询结果转换成一行,数据格式如下ID      Type  Parameter Value     Machine_NO   Operator   UpdateTime1111111111111DS  after   155.780000   P2-2222  88888888  2014/6/5 11:52:13211111111111...

weixin_39824191的博客 277

华为OD机试E卷 -猜字谜(Java & Python& JS & C++ & C )

小王设计了一个简单的猜字谜游戏,游戏的谜面是一个错误的单词,比如nesw,玩家需要猜出谜底库中正确的单词。猜中的要求如下:请你写一个程序帮忙在谜底库中找到正确的谜底。谜面是多个单词,都需要找到对应的谜底,如果找不到的话,返回”not found”

算法大师! 3488

npm install 时出现npm error code ENOTFOUND和npm error network request to https://registry.npmjs.org的解决方案

本文主要介绍了npm install 时出现npm error code ENOTFOUND和npm error network request to https://registry.npmjs.org 的解决方案,希望能对使用npm的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 6万+

Omniversr学习——Pivot Tool

在使用Isaac sim时,我们经常遇到零件坐标系偏离中心的情况,工具界面又找不到类似CAD软件中那种创建坐标系的工具,在拖动或安装零件时不是很方便。我刚接触Isaac Sim时常常需要返回CAD软件中调整零件的坐标系,这很麻烦。实际上Isaac Sim内置了解决方案——只需手动启用Pivot Tool扩展即可解决问题。Pivot翻译为支点、轴心或中心点。为便于理解,我暂且将其类比为坐标系,后续若有需要再作调整。Pivot工具能够灵活调整各节点坐标系,显著提升场景布置效率。

qq_61329758的博客 663

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Unity 的 UGUI Pivot学习

Pivot很常见,也很简单,有时候简单到让人忽视,再简单的东西也希望自己能够熟知,而不是一知半解。 Pivot就是中心点的意思,在UGUI里面是长这样的: 一个UI控件是一个矩形,我们先建立UI的坐标模型:以左下角为原点(0,0),按照顺时针的方向设矩形的四个角坐标为(x1y1, x1y2, x2y2, x2y1)。 现在我门可以计算Pivot.x = 0.5时,x的值。x = (x...

PresleyGo的博客 1568

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

pandas 学习 —— pivot table

0. DataFrame 的 index、columns、values>> df = pd.DataFrame(np.arange(6).reshape(3, 2), index=['one', 'two', 'three'], columns=['a', 'b']) >> df a b one 0 1 two 2 3 three 4 5>> df.index I

1482

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

ue4 houdini pivot painter 学习笔记

unreal_pivotpainter的左边至少要name P uv。版本2是导出成贴图,版本1是导入到uv里面去。右通道至少要有N、name、P。这里创建name,是必须的。然后选择版本1,然后导出。

qqQQqsadfj的博客 326

Sql学习第八天——SQL 关于pivot

SQL 关于pivot 解释: PIVOT 通过将表达式某一列中的唯一值转换为输出中的多个列来转换表值表达式,并在必要时对最终输出中所需的任何其余的列值执行聚合。 还是通过实例来了解用法和作用: 先建表一([dbo].[Customers]  字段说明:customerid -- 消费者id , city -- 所在城市): CREATE TABLE [dbo].[Customer...

暮色 129

【Oracle】学习笔记之pivot函数使用

行转列 列转行函数使用场景 创建一个表 create table A_BANK ( NAME VARCHAR2(100), BANK VARCHAR2(50), MONEY NUMBER ) 插入几条数据 insert into A_BANK values ('jack','icbc',8800); insert into A_BANK values ('jack','boc',9900); insert into A_BANK values ('lucy','icbc',10

xunming的专栏 1405

Oracle Pivot学习心得

  今天在做一个查询报表需要将多行的查询结果转换成一行,数据格式如下   ID      Type  Parameter Value     Machine_NO   Operator   UpdateTime 1111111111111DS  after   155.780000   P2-2222  88888888  2014/6/5 11:52:13211...

weixin_30840573的博客 130

pandas的stack, unstack, melt, 和pivot函数的学习总结

1. 写在前面 今天总结一下pandas的四个函数, stack, unstack, melt和pivot, 这四个函数再处理DataFrame结构的时候, 非常常用, 也非常好用, 具体的就来看一下。 pd.stack()和pd.unstack() 这两个方法在数据分析的时候也是非常常用, 网上的文档说这是行转列,列转行的方法,但是具体转的时候,还是不知道转过来会是什么样子,或者有了需求也不会用,所以在这里,记录一下我对这两个方法的理解。 方法原型: 通过 ?pd.DataFrame.unstack/st

Miracle8070 5333

oracle 学习之 unpivot/pivot函数及hive实现该功能

Oracle中pivot函数详解_实泽有之,无泽虚之的博客-优快云博客pivot函数格式:pivot(聚合函数 for 需要转为列的字段名 in(需要转为列的字段值));pivot函数说明:实现将指定字段的值转换为列的效果。oracle 总转横函数,详解Oracle行列转换函数-pivot函数和unpivot函数-多智时代_吴寿鹤的博客-优快云博客今天主要介绍一下Oracle行转列及列转行常见函数,下面一起来看看吧!

cclovezbf的博客 1万+
上一篇: 乱弹:互联网需要beta精神,但不需要Beta应用
下一篇: 剖析人性与社会的力作--《蝙蝠侠6》
linqingfeng
博客等级 码龄21年 69粉丝 140原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值