SQL SERVER PIVOT使用
参照这个网址介绍
http://www.cnblogs.com/lwhkdash/archive/2012/06/26/2562979.html
一般SQL Server的函数都会识别为紫色,可是PIVOT却是灰色,我一开始以为是SQL Server不能使用,但能正常使用
可以使用print @@version确认下兼容级别,90的是没问题的
Microsoft SQL Server 2005 - 9.00.4060.00 (X64)
数据库右键->属性->选项
这聚合函数对text,nvarchar,varchar字段都不适用,只有将INCOME是DECIMAL才可以
create table WEEK_INCOME3(WEEK NVARCHAR(10),INCOME
text)
既然需要1个函数,那对于varchar类型还可以用max函数作变通的办法,text就还是不行
create table WEEK_INCOME4(WEEK NVARCHAR(10),INCOME VARCHAR(10))
delete from WEEK_INCOME4
INSERT INTO WEEK_INCOME4
SELECT 'D1', '$1000'
UNION ALL
SELECT'D2', '$2000'
UNION ALL
SELECT'D3', '$3000'
UNION ALL
SELECT'D4', '$4000'
UNION ALL
SELECT'D5', '$5000'
UNION ALL
SELECT'D6', '$6000'
UNION ALL
SELECT'D7', '$7000'
由PIVOT函数的格式可以看出,WEEK column的值作为变化后的列名,不是字符串的形式,若是column值有空格,则需要用中括号。
update WEEK_INCOME4 set WEEK ='D1 D1' where iNCOME='$1000'
select * from WEEK_INCOME4
pivot(max(INCOME) for [WEEK] in ([D1 D1],D2,D3,D4,D5,D6,D7)) tbl
SQL SERVER PIVOT使用的更多相关文章
- 行转列:SQL SERVER PIVOT与用法解释
在数据库操作中,有些时候我们遇到需要实现“行转列”的需求,例如一下的表为某店铺的一周收入情况表: WEEK_INCOME(WEEK VARCHAR(10),INCOME DECIMAL) 我们先插入一 ...
- SQL Server pivot 行转列遇到的问题
前段时间开发系统时,有个功能是动态加载列,于是就使用了SQL Server自带的PIVOT函数进行行转列,开始用的非常溜,效果非常好.但是提交测试后问题来了,测试添加的列名中包含空格,然后就杯具了,功 ...
- SQL SERVER PIVOT与用法解释
通俗简单的说:PIVOT就是行转列,UNPIVOT就是列传行 在数据库操作中,有些时候我们遇到需要实现“行转列”的需求,例如一下的表为某店铺的一周收入情况表: WEEK_INCOME(WEEK ),I ...
- 使用SQL SERVER PIVOT实现行列转置
一般我们在使用SQL语句实现行列转置时候,最常用的方法无外乎就是 case语句来实现,但是如果需要需要转置的列太多,那么case起来语句就无限庞大,十分不方便,sql server中的PIVOT就可以 ...
- sql server pivot/unpivot 行列互转
有时候会碰到行转列的需求(也就是将列的值作为列名称),通常我都是用 CASE END + 聚合函数来实现的. 如下: declare @t table (StudentName nvarchar(20 ...
- SQL SERVER pivot(行转列),unpivot(列转行)
[pivot]行转列:多行变一列 假设学生成绩表Score1 Name Subject Score 小张 语文 88 小花 数学 89 小张 数学 90 Name 语文 数学 小花 null 89 小 ...
- 2019-03-28 SQL Server Pivot
--现在我们是用PIVOT函数将列[WEEK]的行值转换为列,并使用聚合函数Count(TotalPrice)来统计每一个Week列在转换前有多少行数据,语句如下所示 select * from Sh ...
- sql server pivot
SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[YearSalary]( [year] [int] NULL, ...
- Sql Server 语句
##目录 #####清除缓存 DBCC FREEPROCCACHE; DBCC DROPCLEANBUFFERS; SELECT stock.IdStock, stock.Descr FROM [In ...
随机推荐
- 织梦安全防护:禁止uploads、data、templets执行脚本
下面介绍下如何针对uploads.data.templets做PHP脚本限制:对uploads.data.templets 三个目录做执行php脚本限制,就算被上传了木马文件到这些文件夹,也是无法运行 ...
- Notepad++连接VMWare中Linux只能看到/root目录
如下图,使用SFTP协议连接,用root用户登录后,我一开始只能看到root下的文件.稍作修改,把下面的“Initial remote directory”设置成“/”就可以看到根目录了.
- Spring Cloud Alibaba学习笔记(8) - RocketMQ术语与概念
Topic 一类消息的集合,RocketMQ的基本订阅单位 部署结构 Name Server Name Server 为 producer 和 consumer 提供路由信息. 相对来说,namese ...
- 3_PHP表达式_2_变量
以下为学习孔祥盛主编的<PHP编程基础与实例教程>(第二版)所做的笔记. PHP变量可分为自定义变量和预定义变量. 以下所谈到的变量均为自定义变量. 1.变量的基本概念 PHP的变量名遵循 ...
- 【转】使用Scanner输入字符串时next()和nextLine()区别
在实现字符窗口的输入时,很多人更喜欢选择使用扫描器Scanner,它操作起来比较简单.在编程的过程中,我发现用Scanner实现字符串的输入有两种方法,一种是next(),一种nextLine(),但 ...
- 六、select查询基础篇
前言: DQL(Data QueryLanguage):数据查询语言,通俗点讲就是从数据库获取数据的,按照DQL的语法给数据库发送一条指令,数据库将按需求返回数据. 一.基本语法 select 查询的 ...
- [Jenkins][centos]1 持续集成 之 配置VNC,部署Jenkins
痛点:上一篇的AWS部署的VNC不知为啥挂了,死活连不上,因此改申请京东云做部署Jenkins 预计阅读时间:20分钟 更新软件,安装桌面 yum -y update yum -y groupinst ...
- 团队高效率协作开发的秘密武器-APIDOC
团队高效率协作开发的秘密武器 1.前言 在团队协作开发中,不知道各位有没有遇到这样的问题: l 新人接手了项目代码,因没有项目文档,只能靠追踪路由,寻读代码分析业务逻辑 l 前端同学写好了页面,苦等后 ...
- kubernetes---ConfigMap管理应用配置
1.拆分环境 主机名 角色 ip hdss7-11.host.com zk1.od.com(Test环境) 10.4.7.11 hdss7-12.host.com zk2.od.com(Prod环境) ...
- LoggerFactory is not a Logback LoggerContext but Logback is on the classpath. Either remove Logback or the competing implementation
2019-06-26 22:19:57.408642475 java.lang.IllegalArgumentException: LoggerFactory is not a Logback Log ...