电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

【各大软件公司NET工程师笔试压轴题】------不得不看VIP免费

【各大软件公司NET工程师笔试压轴题】------不得不看_第1页
【各大软件公司NET工程师笔试压轴题】------不得不看_第2页
【各大软件公司NET工程师笔试压轴题】------不得不看_第3页
第1页共7页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第1页共7页纵览各大社区、论坛,各大ORM框架火得不行了,如NHibernate、LINQtoSQL、ADO.NETEntityframework等,还有最近市场上出版的一本叫《领域驱动设计与模式实战》,里面也凸显了不少NHibernate在领域驱动设计中的作用与地位,也算是第一本与NHibernate相关的书籍吧!不过就NHibernate而言还是没有官方文档介绍得详细呵呵,园子里Kiler已经把他翻译成中文版的了,收益一大片仅仅是CET-4的人。不管你是用NHibernate也好,还是用LINQtoSQL也好,用profiler一跟踪,执行的都是SQL语句,所以所SQL是根。特别是对于那些以数据为中心的应用系统,在数据库中实现复杂的存储过程,复杂的报表查询,还是直接SQL来得痛快。当然对于那些在基于.NET的中间层应用中,它们实现面向对象的业务模型和商业逻辑的应用,NHibernate是最有用的。不管怎样,NHibernate一定可以帮助你消除或者包装那些针对特定厂商的SQL代码,并且帮你把结果集从表格式的表示形式转换到一系列的对象去(官方文档)。有点跑题了,不再啰嗦----直接晾出压轴题。压轴题第一问1.把表一转换为表二表一:表二:数据库代码如下:代码第2页共7页第1页共7页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第2页共7页1DROPtable#student2CREATETABLE#student(stdnamenvarchar(10),stdsubjectnvarchar(10),resultint)3INSERTINTO#studentVALUES('张三','语文',80)4INSERTINTO#studentvalues('张三','数学',90)5INSERTINTO#studentVALUES('张三','物理',85)6INSERTINTO#studentVALUES('李四','语文',85)7INSERTINTO#studentvalues('李四','数学',92)8INSERTINTO#studentVALUES('李四','物理',82)9INSERTINTO#studentVALUES('李四','化学',82)10INSERTINTO#studentVALUES('李四','化学',82)11SELECT*FROM#student可能很多老手们,一看到这题目就有了答案。当然,贴出答案来不是我的目的,我要带着SQL新手们重构到答案。用李建忠老师最爱说的话就是------我不建议一上来就套用模式,而应该从重构到模式。首先大家会想到分两组1selectstdname,····,from#studentgroupbystdname然后······中间该写什么呢?代码1casestdsubjectwhen'化学'thenResultend2casestdsubjectwhen'语文'thenResultend3casestdsubjectwhen'···'thenResultend4casestdsubjectwhen'···'thenResultend5casestdsubjectwhen'···'thenResultend表二里面得0是哪里来的呢?第3页共7页第2页共7页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第3页共7页代码1isnull(sum(casestdsubjectwhen'化学'thenResultend),0)2isnull(sum(casestdsubjectwhen'语文'thenResultend),0)3isnull(sum(casestdsubjectwhen'···'thenResultend),0)4isnull(sum(casestdsubjectwhen'···'thenResultend),0)5isnull(sum(casestdsubjectwhen'···'thenResultend),0)所以得出:代码1selectstdname,2isnull(sum(casestdsubjectwhen'化学'thenResultend),0)[化学],3isnull(sum(casestdsubjectwhen'数学'thenResultend),0)[数学],4isnull(sum(casestdsubjectwhen'物理'thenResultend),0)[物理],5isnull(sum(casestdsubjectwhen'语文'thenResultend),0)[语文]6from#student7groupbystdname然后得出答案:代码1declare@sqlvarchar(4000)2set@sql='selectstdname'3select@sql=@sql+',isnull(sum(casestdsubjectwhen'''+stdsubject+'''thenResultend),0)['+stdsubject+']'第4页共7页第3页共7页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第4页共7页4from(selectdistinctstdsubjectfrom#student)asa5select@sql=@sql+'from#studentgroupbystdname'6print@sql7exec(@sql)8压轴题第二问:把表二转化为表一表一:表二:数据库代码如下:代码1DROPtable#student22CREATETABLE#student2(stdnamenvarchar(10),化学int,数学int,物理int,语文int)3INSERTINTO#student2VALUES('李四',164,92,82,85)第5页共7页第4页共7页编号:时间:2021年x月x日书山有路...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

中小学文库+ 关注
实名认证
内容提供者

精品资料应用尽有

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部