上篇我们说到了纵列转横列,这篇讲下横列转纵列,具体代码:

1.建表

CREATE TABLE [dbo].[EndLongChangeAcross](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](50) NOT NULL,
[Chinese] [int] NOT NULL,
[English] [int] NOT NULL,
[Math] [int] NOT NULL,
CONSTRAINT [PK_EndLongChangeAcross] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] GO
SET IDENTITY_INSERT [dbo].[EndLongChangeAcross] ON GO
INSERT [dbo].[EndLongChangeAcross] ([Id], [Name], [Chinese], [English], [Math]) VALUES (1, N'张三', 89, 12, 82)
GO
INSERT [dbo].[EndLongChangeAcross] ([Id], [Name], [Chinese], [English], [Math]) VALUES (2, N'李四', 78, 45, 24)
GO
SET IDENTITY_INSERT [dbo].[EndLongChangeAcross] OFF
GO
ALTER TABLE [dbo].[EndLongChangeAcross] ADD CONSTRAINT [DF_EndLongChangeAcross_Chinese] DEFAULT ((0)) FOR [Chinese]
GO
ALTER TABLE [dbo].[EndLongChangeAcross] ADD CONSTRAINT [DF_EndLongChangeAcross_English] DEFAULT ((0)) FOR [English]
GO
ALTER TABLE [dbo].[EndLongChangeAcross] ADD CONSTRAINT [DF_EndLongChangeAcross_Math] DEFAULT ((0)) FOR [Math]
GO

2.具体SQL

SELECT  Name ,
'语文' AS 'Subject',
Chinese AS 'Score'
FROM dbo.EndLongChangeAcross
UNION ALL
SELECT Name ,
'英语',
English AS 'Score'
FROM dbo.EndLongChangeAcross
UNION ALL
SELECT Name ,
'数学' ,
Math AS 'Score'
FROM dbo.EndLongChangeAcross
ORDER BY Name DESC

具体效果:

MSSQL横列转纵列的更多相关文章

  1. MSSQL纵列转横列

    在工作中我们一般会遇到将纵列转横列的需求,具体代码: 1.建表 CREATE TABLE [dbo].[AcrossChangeEndLong]( ,) NOT NULL, ) NOT NULL, ) ...

  2. (转载)SQL语句,纵列转横列

    SQL语句,纵列转横列 Feed: 大富翁笔记 Title: SQL语句,纵列转横列 Author: wzmbox Comments sTable.db库位 货物编号 库存数1 0101 501 01 ...

  3. MSSQL 2005 列转行应用案例

    /*MSSQL 2005 列转行应用案例 By claro(陈亮) 2008-12-2 转载请包含此信息*/ --test table KuCunMX If object_id ('KuCunMX') ...

  4. CSS实现横列布局的方法总结

    一.使用float实现横列布局的方法 如下面所示:DIV1和DIV2都可以选择向左或者向右浮动50%来实现展示在同一行 div1 div2 实现下面图片中布局的css样式如下: 分析: 1.第一行第一 ...

  5. 一、CSS实现横列布局的方法总结

    一.使用float实现横列布局的方法 如下面所示:DIV1和DIV2都可以选择向左或者向右浮动50%来实现展示在同一行 div1 div2 实现下面图片中布局的css样式如下: 分析: 1.第一行第一 ...

  6. MSSQL行车列规则

    行转列,是SQL中经常会遇到的一个问题,并且分为静态转换和动态转换,所谓静态转换即在转换的行数已知或固定:动态转换则为转换的行数不固定. 转换的方法一般采用case when语句或pivot(MSSQ ...

  7. [转]MSSQL多列取最大或者最小值

    本文转自:http://blog.csdn.net/wufeng4552/article/details/4681510 /* lvl1 lvl2 lvl3 lvl4 lvl 4 3 4 1 3 2 ...

  8. oracle sql小结(主要讲横列转换的例子)decode 以及case

    --建表 create table kecheng( id NUMBER, name VARCHAR2(20), course VARCHAR2(20), score NUMBER); --插入数据i ...

  9. oracle sql小结(主要讲横列转换的例子)group by以及wmsys.wm_concat()的使用

    ---计算九月每个电厂的数量select f_dcname,count(f_dcname) as 九月份的数量 from W_EC_PLACESTATION_COLLECT twhere f_coll ...

随机推荐

  1. 通过重写ViewGroup学习onMeasure()和onLayout()方法

    在继承ViewGroup类时,需要重写两个方法,分别是onMeasure和onLayout. 1,在方法onMeasure中调用setMeasuredDimension方法 void android. ...

  2. 《Cracking the Coding Interview》——第9章:递归和动态规划——题目1

    2014-03-20 02:55 题目:小朋友跳台阶,每次跳1层或2层,那么跳N层总共有多少种跳法. 解法:斐波那契数列. 代码: // 9.1 A child can run up the stai ...

  3. 《数据结构》C++代码 BFS与DFS

    BFS,广度优先搜索,一层一层去遍历图,故称广度优先.实现方式:队列. DFS,深度优先搜索,撞墙才回头的遍历,称为深度优先.实现方式:递归(栈). 这两种遍历方式,是访问图的基本方式.如果拿树做对比 ...

  4. [转]赵桐正thinkphp教程笔记

    原文:赵桐正thinkphp教程笔记 ,有修改 常用配置 常用配置config.php: <?php return array( //'配置项'=>'配置值' 'URL_PATHINFO_ ...

  5. php数组循环的三种方式

    PHP 的遍历数组的三种方式:for循环.foreach循环.while.list().each()组合循环 PHP当中数组分为:索引数组[转换成json是数组]和关联数组[转换成json是对象] f ...

  6. Sublime Text 2 中文乱码

    欲解决乱码问题,关键在于让Sublime Text 2支持GB2312和GBK.步骤如下:1.安装Sublime Package Control.在Sublime Text 2上用Ctrl+-打开控制 ...

  7. Java UDP的简单实例以及知识点简述

    UDP的实现 Java中实现UDP协议的两个类,分别是DatagramPacket数据包类以及DatagramSocket套接字类. 其与TCP协议实现不同的是: UDP的套接字DatagramSoc ...

  8. CodeForces Round #515 Div.3 C. Books Queries

    http://codeforces.com/contest/1066/problem/C You have got a shelf and want to put some books on it. ...

  9. asp.net 存储过程 输出参数 取不到值

    这是MSDN上的明确解释:当您将 Command 对象用于存储过程时,可以将 Command 对象的 CommandType 属性设置为 StoredProcedure.当 CommandType 为 ...

  10. vue cli & npm err & shit cnpm

    vue cli & npm err & shit cnpm npm err & shit cnpm https://github.com/vuejs/vue-cli/issue ...