declare @table table (name nvarchar(4))insert into @tableselect '张三' union allselect '李四' union allselect '王五' union allselect '刘三' union allselect '杨二' union allselect '胡八' union allselect '赵六' --方法1:create table #t (id int identity(1,1),name nvarch
适用场景:需要将行数据转换成列数据 例子: 现在有一个学生的成绩表 但是我们需要将每个学生的成绩汇集到一条数据上,这时候就可以用到行转列. 代码如下 一.不使用 PIVOT SELECT ),[Stu_ID])) AS 学生 ,) END) AS 语文成绩 ,) END) AS 数学成绩 ,) END) AS 英语成绩 ,,),)) AS 平均成绩 FROM [EFDemo].[dbo].[Table_1] GROUP BY Stu_ID 二.使用 PIVOT SELECT * FROM [E
http://wo13145219.iteye.com/blog/2022667 http://json2csharp.chahuo.com/ using System; using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using
SQL 行转列和列转行 行列互转,是一个经常遇到的需求.实现的方法,有case when方式和2005之后的内置pivot和unpivot方法来实现. 在读了技术内幕那一节后,虽说这些解决方案早就用过了,却没有系统性的认识和总结过.为了加深认识,再总结一次. 行列互转,可以分为静态互转,即事先就知道要处理多少行(列);动态互转,事先不知道处理多少行(列). 1 --创建测试环境 2 USE tempdb; 3 GO 4 5 IF OBJECT_ID('dbo.Orders') IS NOT NU
SQL行转列汇总 PIVOT 用于将列值旋转为列名(即行转列),在 SQL Server 2000可以用聚合函数配合CASE语句实现 PIVOT 的一般语法是:PIVOT(聚合函数(列) FOR 列 in (-) )AS P 注意:PIVOT.UNPIVOT是SQL Server 的语法,使用需修改数据库兼容级别(在数据库属性 ) SQL2008 中可以直接使用 完整语法: table_source PIVOT( 聚合函数(value_column) FOR pivot_column IN(<c
/** * Hex格式数据转换成十六进制字符串 * @param src */ public void bytesToHexString(byte[] by){ StringBuilder stringBuilder = new StringBuilder(""); for (int i = 0; i < by.length; i++) { int in = by[i] & 0xFF; String str= Integer.toHexString(in); if (st
很久没写blog,不是懒,实在是最近我这的访问速度不好,用firefox经常上传不了图片 ....... 今天无意发现了SQL Server 2008 Datetime Cast 成 Date 类型可以使用索引,分享一下: 测试环境: USE TEMPDB GO CREATE TABLE TB ( ID INT IDENTITY(1,1) PRIMARY KEY, NAME VARCHAR(200), OPTIME DATETIME DEFAULT GETDATE() ) GO DECLARE