SQL查询习题Word格式.docx

上传人:b****6 文档编号:18565302 上传时间:2022-12-28 格式:DOCX 页数:11 大小:17.07KB
下载 相关 举报
SQL查询习题Word格式.docx_第1页
第1页 / 共11页
SQL查询习题Word格式.docx_第2页
第2页 / 共11页
SQL查询习题Word格式.docx_第3页
第3页 / 共11页
SQL查询习题Word格式.docx_第4页
第4页 / 共11页
SQL查询习题Word格式.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

SQL查询习题Word格式.docx

《SQL查询习题Word格式.docx》由会员分享,可在线阅读,更多相关《SQL查询习题Word格式.docx(11页珍藏版)》请在冰豆网上搜索。

SQL查询习题Word格式.docx

%四%'

5、查询<

,查询姓名长度为三个字,姓“李”,且最后一个字是“强”的全部学生信息。

李_强'

6、查询<

或者姓”李”的学生的基本信息。

李%'

7、查询<

并且"

所属省份"

是"

北京"

的学生信息

andjg='

北京'

8、查询<

,查询"

、”新疆”、”山东”或者"

上海"

的学生的信息

wherejg='

orjg='

上海'

山东'

新疆'

or

fromxsb

wherejgin('

'

9、查询<

,但是"

不是"

andjg!

='

andjg<

>

'

andjgnotlike'

%北京%'

10、查询<

,查询全部学生信息,并按照“性别”排序,性别相同的情况下按照“所属省份”排序,所属省份相同的情况下再按照“班级”排序

orderbyxb,jg,bj

11、查询<

,查询现有学生都来自于哪些不同的省份

selectdistinctjg

12、查询<

学生选修信息表>

,查询没有填写成绩的学生的学号、课程号和成绩

selectxh,kch,cj

fromcjb

wherecjisnull

13、查询<

,查询全部填写了成绩的学生的选修信息,并按照“成绩”从高到低进行排序

wherecjisnotnull

orderbycjdesc

14、找出两个姓张的同学信息,只显示对应学生的姓名,性别和班级

Selecttop2xm,xb,bj

Fromxsb

Wherexmlike'

二、聚合函数练习

1、统计<

,统计共有多少个学生

selectcount(*)

2、统计<

,统计年龄大于20岁的学生有多少个

wherenl>

20'

whereyear(getdate())-year(csrq)>

20

3、统计<

,统计入学时间在1998年至2000年的学生人数

whererxrq>

1998-1-1'

andrxrq<

2000-12-31'

whererxrqbetween‘1998-1-1’and‘2000-12-31’

4、统计<

,统计学号为"

S001"

的学生的平均成绩

selectAVG(cj)

wherexh='

1'

OR

selectCONVERT(DECIMAL(18,2),AVG(cj))||保留小数点两位

5、统计<

的学生的总成绩

selectsum(cj)

6、统计<

,查询课程号为”C001”的课程的最高成绩

selectmax(cj)

wherekch='

23'

7、统计<

,查询所有学生中的最大年龄是多少

selectmax(nl)

三、分组查询练习

,统计每个课程的选修人数

selectkch,count(*)

groupbykch

,统计每个同学的总成绩

groupbyxh

,统计每个班级中每种性别的学生人数,并按照班级排序

selectbj,xb,count(*)

groupbybj,xb

,统计每门课程的平均成绩,并按照平均成绩降序排序

selectkch,AVG(cj)

orderbyAVG(cj)desc

,显示有两门以上课程不及格的学生的学号

selectxh

wherecj<

60'

havingcount(*)>

2'

分组后的条件判断

,统计每个班级中的最大年龄是多少

selectbj,SUM(nl)

groupbybj

四、嵌套查询练习

1、用子查询实现,查询选修“高等数学”课的全部学生的总成绩

1.课程表查课程号

2.查所有高数成绩

SelectSum(cj)

wherekch=(Selectkch

fromkcb

wherekcm='

高等数学'

2、用子查询实现,统计<

,显示学号为"

的学生在其各科成绩中,最高分成绩所对应的课程

思考:

如果该学号学生有两个课程分数都为最高的100分,查询会有什么结果

学号一最高分

最高分对应的课程号

课程号对应课程名

Selectmax(cj)

Fromcjb

Wherexh='

Selectkch

Fromkcb

Wherecj=(selectmax(cj)fromcjb)andxh=’1’

Selectkcm

Wherekchin(Selectkch

3、用子查询实现,查询2班选修"

数据库技术"

课的所有学生的成绩之和

1.班级二班学生

Selectxh

Wherebj=’2’

2.课程表里查课程号

Wherekcm=’数据库技术’

Selectsum(cj)

Wherexhin(Selectxh

Wherebj=’2’)andkch=(Selectkch

4、用子查询实现,查询3班"

同学的"

测试管理"

成绩

1.测试管理的课程号

2.张三的学号

Wherexm=’张三’andbj=’3’

Wherekcm=’测试管理’

Selectcj

Wherexhin(Selectxh||in可能有重名的多个‘张三’

Wherexm=’张三’

)andkcm=(Selectkch

五、联接查询练习

1、查询"

的各科考试成绩,要求显示姓名、课程号和成绩

查张三学号

查学号对应成绩

Selectcj,kch

Wherexhin(Selectxh

Or

selectxm,kch,cj

fromxsb,cjb

wherexsb.xh=cjb.xh

andxm='

2、查询"

的各科考试成绩中,哪科没有记录考试成绩,要求显示姓名、课程号和成绩

查张三学号

学号对应的没有成绩的

Wherecjisnull

Wherecj=(Selectcj

Wherecjisnull)andxhin(Selectxh

Wherexm=’张三’)

Or

andcjisnull

3、查询"

的各门课程成绩,要求显示姓名、课程名称和成绩

学号对应成绩

selectxm,kcm,cj

fromxsb,cjb,kcb

andcjb.kch=kcb.kch

4、查询3班"

的"

成绩,要求显示姓名、成绩

查3班张三的学号

查测试管理的课程号

根据学号和课程号查成绩

selectxm,cj

andkcm='

测试管理'

andbj=’3’

5、查询所有2000年以前入学的,各班男生的各科考试平均成绩

selectAVG(cj),bj,kch

andrxrq<

2000'

andxb='

男'

groupbybj,kch

六、外联接查询

查询”李坚强”所有课程的成绩,并显示学号、姓名、课程号和成绩,没有成绩记录的学号包括:

('

S009'

S010'

S011'

1、使用左联接

2、使用右联接

3、对比等值连接

七、补充提高

1、查询“张三”比“王三”入学早几年

2、查询所在班级和该班内学生的年龄之和,其中每个人的年龄都大于20岁,每个班的年龄之和大于60岁

3、计算每种产品的剩余库存量

表1,为产品进货表,产品名称name[char(10)],产品数量amount[int]

表2,为产品出货表,产品名称name[char(10)],产品数量amount[int]

业务逻辑:

表1存储产品的总进货量,表2存储每种产品每次的出货量,如产品A进货为100,出货了3次,每次分别为10、20、30,那么A产品的库存就为40

表A1|表A2

-------------------|---------------------------

nameamount|nameamount

A100|A10

B100|A20

|A30

|B10

|B40

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1