易截截图软件、单文件、免安装、纯绿色、仅160KB

sql 行转列

1、 强大的group by 1 select stdname,2 isnull(sum( case stdsubject when ' 化学 ' then Result end), 0 ) [化学],3 isnull(sum( case stdsubject when ' 数学 ' then Result end), 0 ) [数学],4 isnull(sum( case stdsubject when ' 物理 ' then Result end), 0 ) [物理],5 isnull(sum( case stdsubject when ' 语文 ' then Result end), 0 ) [语文]6 from #student7 group by stdname 在这里,group by与sum + case结合,可以将表1中的记录(行)变成表2的字段(列)。Sum里面如果没有case,那么出来的值,只能是全部科目的总和,用了case以后,就是某科的成绩;然后这里用了好几个sum,每个科目一个sum,于是表1中本来某人某科占一条记录的"行"就变成了表2里某人一条记录,每科做一个字段了。 这种心思巧妙和对语法的熟练运用让人击节赞叹。 2、 利用select from (select from)的模式生成SQL语句 1 declare @sql varchar( 4000 )2 set @sql = ' select stdname '3 select @sql = @sql + ' ,isnull(sum(case stdsubject when ''' + stdsubject + ''' then Result end),0) [ ' + stdsubject + ' ] '4 from (select distinct stdsubject from #student) as a5 select @sql = @sql + ' from #student group by stdname '6 print @sql7 exec(@sql) 为了自动写上所有的科目,这里先将科目信息提炼出来: 4 from (select distinct stdsubject from #student) as a 利用之拼接生成SQL语句。当然现实中,如果#student表很大,这种做法并不妥,应该都有一个专门的科目类别表的。 3、 在临时库中提炼出字段名。临时表是真实存在的表,保存在[tempdb]中,可以利用object_id('tempdb.dbo.表名')的方式获得字段信息。 ============================================ 附录: http://www.cnblogs.com/zhanglei644213943/archive/2009/12/27/1633356.html 纵览各大社区、论坛,各大 ORM框架火得不行了,如NHibernate、LINQ to SQL、ADO.NET Entity framework等,还有最近市场上出版的一本叫《领域驱动设计与模式实战》,里面也凸显了不少NHibernate在领域驱动设计中的作用与地位,也算是第一本与NHibernate相关的书籍吧!不过就NHibernate而言还是没有官方文档介绍得详细呵呵,园子里Kiler 已经把他翻译成中文版的了,收益一大片仅仅是CET-4的人。不管你是用NHibernate也好,还是用LINQ to SQL也好,用profiler一跟踪,执行的都是SQL语句,所以所SQL是根。特别是对


相关文档:

最大程度降低 SQL Server 中的阻塞

http://technet.microsoft.com/zh-cn/magazine/2008.04.blocking.aspx
SQL Server
最大程度降低 SQL Server 中的阻塞
Cherié Warren
 
概览:
发生锁升级的原因
避免不必要的阻塞
优化查询
监视锁定对性能的影响
锁定对支持数据库的并发读写活动而言是必需的,但阻塞却会对系统性能产生负面影响, ......

sql 触发器实例

定义:何为触发器?在SQL Server里面也就是对某一个表的一定的操作,触发某种条件,从而执行的一段程序。触发器是一个特殊的存储过程。
      常见的触发器有三种:分别应用于Insert , Update , Delete 事件。
      我为什么要使用触发器?比如,这么两个表:
&n ......

在ACCESS数据库中打开sql窗口的方法

       为了执行sql语句,我们会在access数据库中执行sql语句,这样方便我们分析。方法如下:
     打开access数据库,点击”创建“,在单击“查询设计”,会弹出一个显示表的窗口,关掉。会出现一个sql试图,打开就可以再里面写sql代码了。 ......

SQL查询性能优化

一.名词解释:
0。SQL 结构化查询语言(Structured Query Language)
1。非关系型数据库系统
做为第一代数据库系统的总称,其包括2种类型:“层次”数据库与“网状”数据库
“层次”数据库管理系统 eg:IBM&IMS (Information Management System ......

SQL基本使用和代码优化

EXEC和sp_executesql的区别?
DBCC FREEPROCCACHE --》清空缓存中的执行计划
SELECT cacheobjtype,objtype,usecounts,sql from sys.syscacheobjects WHERE sql NOT LIKE '%cach%' AND sql NOT LIKE '%sys.%' --》查找对应的缓存中的对应计划
SQL Server为每一个的查询字符串创建新的执行计划,即使查询模式相同也是这样 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号