仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1118|回复: 9
打印 上一主题 下一主题

[学习教程] MYSQL网页设计SQL Server实习题2

[复制链接]
透明 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:30:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
事实上,在任何DBaaS中,解决方案提供商对如何管理物理资源都没有控制权,因此MySQL学习教程可能会发现由于DBaaS的局限性使得他们提供给客户的远远小于客户所期望的。server标题2
成绩形貌:
已知干系形式:
S(SNO,SNAME)先生干系。SNO为学号,SNAME为姓名
C(CNO,CNAME,CTEACHER)课程干系。CNO为课程号,CNAME为课程名,CTEACHER为任课教员
SC(SNO,CNO,SCGRADE)选课干系。SCGRADE为成就

请求完成以下5个处置:
1.找出没有选修过“李明”先生教学课程的一切先生姓名
2.列出有二门以上(含两门)不合格课程的先生姓名及其均匀成就
3.列出既学过“1”号课程,又学过“2”号课程的一切先生姓名
4.列出“1”号课成就比“2”号同砚该门课成就高的一切先生的学号
5.列出“1”号课成就比“2”号课成就高的一切先生的学号及其“1”号课和“2”号课的成就


1.找出没有选修过“李明”先生教学课程的一切先生姓名
--完成代码:
SELECTSNAMEFROMS
WHERENOTEXISTS(
SELECT*FROMSC,C
WHERESC.CNO=C.CNO
ANDC.CTEACHER=李明
ANDSC.SNO=S.SNO)
2.列出有二门以上(含两门)不合格课程的先生姓名及其均匀成就
--完成代码:
SELECTS.SNO,S.SNAME,AVG_SCGRADE=AVG(SC.SCGRADE)
FROMS,SC,(
SELECTSNO
FROMSC
WHERESCGRADE<60
GROUPBYSNO
HAVINGCOUNT(DISTINCTCNO)>=2
)AWHERES.SNO=A.SNOANDSC.SNO=A.SNO
GROUPBYS.SNO,S.SNAME
3.列出既学过“1”号课程,又学过“2”号课程的一切先生姓名
--完成代码:
SELECTS.SNO,S.SNAME
FROMS,(
SELECTSC.SNO
FROMSC,C
WHERESC.CNO=C.CNO
ANDC.CNAMEIN(1,2)
GROUPBYSNO
HAVINGCOUNT(DISTINCTCNO)=2
)SCWHERES.SNO=SC.SNO
4.列出“1”号课成就比“2”号同砚该门课成就高的一切先生的学号
--完成代码:
SELECTS.SNO,S.SNAME
FROMS,SCSC1,SCSC2
WHERESC1.CNO=1
ANDSC2.SNO=2
ANDSC1.CNO=S.CNO
ANDSC1.SCGRADE>SC2.SCGRADE
5.列出“1”号课成就比“2”号课成就高的一切先生的学号及其“1”号课和“2”号课的成就
--完成代码:
SELECTSC1.SNO,[1号课成就]=SC1.SCGRADE,[2号课成就]=SC2.SCGRADE
FROMSCSC1,SCSC2
WHERESC1.CNO=1
ANDSC2.CNO=2
ANDSC1.SNO=SC2.SNO
ANDSC1.SCGRADE>SC2.SCGRADE

Trackback:http://tb.blog.csdn.net/TrackBack.aspx?PostId=384993
[点击此处保藏本文]宣布于2005年05月31日17:31:00

十年守候宣布于2005-06-0612:04PMIP:61.186.252.*
你好:
1.找出没有选修过“李明”先生教学课程的一切先生姓名
SELECTSNAMEFROMS
WHERENOTEXISTS(
SELECT*FROMSC,C<=这里是不是要加上S
WHERESC.CNO=C.CNO
ANDCNAME=李明<=应当是CTEACHER=李明吧
ANDSC.SNO=S.SNO)


十年守候宣布于2005-06-0612:47PMIP:61.186.252.*
列出“1”号课成就比“2”号同砚该门课成就高的一切先生的学号
SELECTS.SNO,S.SNAME
FROMS,(
SELECTSC1.SNO
FROMSCSC1,CC1,SCSC2,CC2
WHERESC1.CNO=C1.CNOANDC1.NAME=1
ANDSC2.CNO=C2.CNOANDC2.NAME=2
<=这里仿佛驴唇不对马嘴吧??
<=是ANDSC2.CNO=C2.CNOANDSC2.SNO=2才对吧
ANDSC1.SCGRADE>SC2.SCGRADE
)SCWHERES.SNO=SC.SNO
并且“1”号课,就我的了解是course的ID,也就是CNO,怎样会是CNAME,并且这里你还写成了C1.NAME,这类立场要不得阿
我是老手,一样平常都是上彀查材料的,还好之前学了一点点,否则关于那些一点都不会的人,不是被楼主害逝世了,要末不说,要末就要有仔细的立场,婉言所至,请楼主体谅

ghb宣布于2005-11-1412:04PMIP:61.236.10.*
/*
成绩形貌:
已知干系形式:
S(SNO,SNAME)先生干系。SNO为学号,SNAME为姓名
C(CNO,CNAME,CTEACHER)课程干系。CNO为课程号,CNAME为课程名,CTEACHER为任课教员
SC(SNO,CNO,SCGRADE)选课干系。SCGRADE为成就
请求完成以下5个处置:
1.找出没有选修过“李明”先生教学课程的一切先生姓名
2.列出有二门以上(含两门)不合格课程的先生姓名及其均匀成就
3.列出既学过“1”号课程,又学过“2”号课程的一切先生姓名
4.列出“1”号课成就比“2”号同砚该门课成就高的一切先生的学号
5.列出“1”号课成就比“2”号课成就高的一切先生的学号及其“1”号课和“2”号课的成就
*/
--createtables(snovarchar(10),snamevarchar(20))
--createtablec(cnovarchar(10),cnamevarchar(20),cteachervarchar(20))
--createtablesc(snovarchar(10),cnovarchar(20),scgradeinteger)
insertintos
select1,ghb
unionallselect2,tw
unionallselect3,wkp
insertintoc
select1,语文,李明
unionallselect2,数学,王了
unionallselect3,英语,别的
insertintosc
select1,2,50
unionallselect1,3,52
unionallselect2,1,80
unionallselect2,2,90
unionallselect2,3,59
unionallselect3,1,100
unionallselect3,2,59
unionallselect3,3,70
--deletefromscwheresno=1andcno=1
select*
froms
select*
fromc
select*
fromsc
--1.找出没有选修过“李明”先生教学课程的一切先生姓名
selectsname
froms
wheres.snonotin(selectsc.snofromsc,cwheresc.cno=c.cnoandc.cteacher=李明)
SELECTSNAMEFROMS
WHERENOTEXISTS(
SELECT*FROMSC,C
WHERESC.CNO=C.CNO
ANDC.CTEACHER=李明
ANDSC.SNO=S.SNO)
--2.列出有二门以上(含两门)不合格课程的先生姓名及其均匀成就
selects.sname,avg(sc.scgrade)asavgsc
froms,sc
wheres.sno=sc.snoands.snoin(selectsnofromscwherescgrade<60groupbysnohavingcount(sno)>=2)
groupbys.sname
selects.SNAME,avg(sc.SCGRADE)fromS,scwheresc.SCGRADE<60ands.sno=sc.snogroupbys.SNAMEhavingcount(sc.SCGRADE)>=2

SELECTS.SNO,S.SNAME,AVG_SCGRADE=AVG(SC.SCGRADE)
FROMS,SC,(
SELECTSNO
FROMSC
WHERESCGRADE<60
GROUPBYSNO
HAVINGCOUNT(DISTINCTCNO)>=2
)AWHERES.SNO=A.SNOANDSC.SNO=A.SNO
GROUPBYS.SNO,S.SNAME
--3.列出既学过“1”号课程,又学过“2”号课程的一切先生姓名
selecttem.sname
from
(
selects.sname
froms
wheres.snoin(selectsnofromscwherecno=1)
unionall
selects.sname
froms
wheres.snoin(selectsnofromscwherecno=2)
)tem
groupbytem.sname
havingcount(tem.sname)>1
selects.snamefroms,scwheres.sno=sc.snoandsc.cno=1andsc.snoin(selectb.snofromscbwhereb.sno=sc.snoandb.cno=2)
selects.snamefroms,scwheres.sno=sc.snoandsc.cno=1andexists(selectb.snofromscbwhereb.sno=sc.snoandb.cno=2)

SELECTS.SNO,S.SNAME
FROMS,(
SELECTSC.SNO
FROMSC,C
WHERESC.CNO=C.CNO
ANDC.cnoIN(1,2)
GROUPBYSNO
HAVINGCOUNT(DISTINCTc.CNO)=2
)SCWHERES.SNO=SC.SNO
--4.列出“1”号课成就比“2”号同砚该门课成就高的一切先生的学号
selectsc.sno
fromsc
wherecno=1andscgrade>(selectscgradefromscwheresno=2andcno=1)andsno2
SELECTSc.SNOFROMSCwheresc.cno=1andexists(select*fromscbwhereb.sno=sc.snoandsc.scgrade>b.scgradeandb.sno=2)
selects.SNOfroms,scwheres.sno=sc.snoandsc.cno=1andsc.SCGRADE>(selectb.SCGRADEfromscbwhereb.sno=sc.snoandb.cno=2)
SELECTS.SNO,S.SNAME
FROMS,SCSC1,SCSC2
WHERESC1.CNO=1
ANDSC2.SNO=2
ANDSC1.CNO=S.CNO
ANDSC1.SCGRADE>SC2.SCGRADE
selectsc1.sno
fromscsc1,scsc2
wheresc1.cno=1andsc1.sno2andsc2.cno=1andsc2.sno=2andsc1.scgrade>sc2.scgradeandsc1.cno=sc2.cno
--5.列出“1”号课成就比“2”号课成就高的一切先生的学号及其“1”号课和“2”号课的成就
selectsc1.sno,sc1.scgrade,sc2.scgrade
fromscsc1,scsc2
wheresc1.sno=sc2.snoandsc1.cno=1andsc2.cno=2andsc1.scgrade>sc2.scgrade

selecta.SNO,a.SCGRADEfromscawhere(a.CNO=1ora.CNO=2)
anda.snoin
(selects.SNOfroms,scwheres.sno=sc.snoandsc.cno=1andsc.SCGRADE>(selectb.SCGRADEfromscbwhereb.sno=sc.snoandb.cno=2))
SELECTSC1.SNO,[1号课成就]=SC1.SCGRADE,[2号课成就]=SC2.SCGRADE
FROMSCSC1,SCSC2
WHERESC1.CNO=1
ANDSC2.CNO=2
ANDSC1.SNO=SC2.SNO
ANDSC1.SCGRADE>SC2.SCGRADE
droptables
droptablec
droptablesc

shenjane宣布于2006-02-073:13PMIP:210.22.152.*
第4、第五题都有一些毛病
SELECTS.SN,SC1.SCGRADEAS课程1,SC2.SCGRADEas课程2FROMS,SCSC1,SCSC2WHERE
S.SNO=SC1.SNOANDSC1.CNO=0001ANDSC2.CNO=0002
ANDSC1.SNO=SC2.SNOANDSC1.SCGRADE<SC2.SCGRADE

MySQL的支持者们却认为,MySQL所保留的功能都是精华,并且是你部署、MySQL学习教程配置和维护这个数据库所必不可少的一些功能。
柔情似水 该用户已被删除
沙发
发表于 2015-1-17 11:18:36 | 只看该作者
代替了原来VB式的错误判断。比Oracle高级不少。
若相依 该用户已被删除
板凳
发表于 2015-1-20 17:26:36 | 只看该作者
不过话说回来了,绝大多数的性能优化准则与对sqlserver存储的结构理解息息相关
因胸联盟 该用户已被删除
地板
发表于 2015-1-29 13:21:59 | 只看该作者
所以你总能得到相应的升级版本,来满足你的需求。
再见西城 该用户已被删除
5#
发表于 2015-2-6 01:23:46 | 只看该作者
索引视图2k就有。但是2005对其效率作了一些改进但是schema.viewname的作用域真是太限制了它的应用面。还有一大堆的环境参数和种种限制都让人对它有点却步。
灵魂腐蚀 该用户已被删除
6#
发表于 2015-2-14 20:04:56 | 只看该作者
XML字段类型更好的解决了XML数据的操作。XQuery确实不错,但是个人对其没好感。(CSDN的开发者应该是相当的熟了!)
分手快乐 该用户已被删除
7#
发表于 2015-3-4 10:02:44 | 只看该作者
是要和操作系统进行Socket通讯的场景。否则建议慎重!
爱飞 该用户已被删除
8#
发表于 2015-3-11 18:12:44 | 只看该作者
可以动态传入参数,省却了动态SQL的拼写。
第二个灵魂 该用户已被删除
9#
发表于 2015-3-19 06:29:09 | 只看该作者
财务软件要用SQL也只是后台的数据库而已,软件都是成品的,当然多学东西肯定是有好处的..
小女巫 该用户已被删除
10#
发表于 2015-3-27 10:39:52 | 只看该作者
代替了原来VB式的错误判断。比Oracle高级不少。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-3 08:52

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表