仓酷云

标题: MSSQL网页设计SQL交织表实例 [打印本页]

作者: 深爱那片海    时间: 2015-1-16 22:18
标题: MSSQL网页设计SQL交织表实例
优化的SQL查询算法,有效地提高查询速度版权声明:CSDN是本Blog托管服务供应商。如本文扳连版权成绩,CSDN不承当相干义务,请版权具有者间接与文章作者接洽办理。



SQL交织表实例

很复杂的一个器材,见网上很多多少伴侣问“怎样完成交织表?”,以下是我写的一个例子,数据库基于SQLSERVER2000。

--======================================================

--交织表实例

--======================================================

建表:

在查询剖析器里运转:

CREATETABLE[Test](

[id][int]IDENTITY(1,1)NOTNULL,

[name][nvarchar](50)COLLATEChinese_PRC_CI_ASNULL,

[subject][nvarchar](50)COLLATEChinese_PRC_CI_ASNULL,

[Source][numeric](18,0)NULL

)ON[PRIMARY]

GO

INSERTINTO[test]([name],[subject],[Source])values(N张三,N语文,60)

INSERTINTO[test]([name],[subject],[Source])values(N李四,N数学,70)

INSERTINTO[test]([name],[subject],[Source])values(N王五,N英语,80)

INSERTINTO[test]([name],[subject],[Source])values(N王五,N数学,75)

INSERTINTO[test]([name],[subject],[Source])values(N王五,N语文,57)

INSERTINTO[test]([name],[subject],[Source])values(N李四,N语文,80)

INSERTINTO[test]([name],[subject],[Source])values(N张三,N英语,100)

Go



450)this.width=450"o:title="sql2">

交织表语句的完成:

--用于:交织表的列数是断定的

selectname,sum(casesubjectwhen数学thensourceelse0end)as数学,

sum(casesubjectwhen英语thensourceelse0end)as英语,

sum(casesubjectwhen语文thensourceelse0end)as语文

fromtest

groupbyname





--用于:交织表的列数是不断定的

declare@sqlvarchar(8000)

set@sql=selectname,



select@sql=@sql+sum(casesubjectwhen+subject+

thensourceelse0end)as+subject+,

from(selectdistinctsubjectfromtest)asa



select@sql=left(@sql,len(@sql)-1)+fromtestgroupbyname

exec(@sql)

go



运转了局:

450)this.width=450"o:title="sql">
提供用于管理、检查、优化数据库操作的管理工具。
作者: 活着的死人    时间: 2015-1-19 07:32
SQLServer的异构移植功能个人感觉最好了。(如果对比过SQLServer的链接服务器和Oracle的透明网关的朋友会发现SQLServer的sp_addlinkedserver(openquery)异构数据库系列比Oracle真是强太多了。)
作者: 飘飘悠悠    时间: 2015-1-28 05:39
另一个是把SQL语句写到服务器端,就是所谓的SP(存储过程);
作者: 老尸    时间: 2015-2-5 17:36
学习SQL语言的话如果要学会去做网站就不是很难!但是要做数据库管理的话就有难度了!
作者: 爱飞    时间: 2015-2-13 04:28
我是新手,正在学习数据库和操作系统,深感理论的泛广,唯有一步一步来,但是又感觉时间不够,收集了很多资料却总是没能认真的看完,希望有一个讨论板块,大家共同解决,共同分享,共同努力
作者: 小魔女    时间: 2015-3-3 14:37
理解了存储结构,再阅读下性能优化的章节基本上会对sqlserver有个清晰地认识
作者: 兰色精灵    时间: 2015-3-11 11:41
记得在最开始使用2k的时候就要用到这个功能,可惜2k没有,现在有了作解决方案的朋友会很高兴吧。
作者: 金色的骷髅    时间: 2015-3-18 15:04
需要注意的一点,也是我使用过程中发现的一个问题。在建立function->schema->table后,如果在现有的分区表上建立没有显式声明的聚集索引时,分区表会自动变为非分区表。这一点很让我纳闷。
作者: 若相依    时间: 2015-3-26 10:36
这一点很好的加强了profiler的功能。但是提到profiler提醒大家注意一点。windows2003要安装sp1补丁才能启动profiler。否则点击没有反应。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2