sql查询语句平均年龄
篇一
数据库查询语句例题与答案实验三实验三数据查询语言
一、基本查询使用相应SQL语句完成如下操作
1查询所有用户的用户ID和姓名。select uid,name from [user]
2查询注年龄最小3位用户的用户ID,姓名和年龄。select top 3(uid) ,name,datediff(yyyy,birthday,getdate() )age from [user] order by birthday desc
3查询库存小于50本的所有书目信息。select * from book where stock 50
4查询清华大学出版社的所有书目信息。select * from book where press=清华大学出版社
5查询价格在50-100元的所有的书名。select title from book where price 50 and price 100
6查询姓“张”或“王”或“李”且单名的学生的情况。select * from [user] where name like张% or name like李%or name like王% and len(name)=2 7查询所有书目的书名、 出版社及价格要求出版社升序排列 出版社相同时按价格从高到底进行排序。 select title,press,price from book order bypress,price desc 8查询所有有交易记录的用户ID。select oid from [order] where state = 4
二、数据汇总使用相应SQL语句完成如下操作
1查询理工类书目的最高价格、最低价格及平均价格。selectmax(price)max_price,min(price)min_price,avg(price)avg_pricefrom book where category = 1
2查询所有理工类书目的库存总量。select sum(stock) from book where category = 1
3查询‘1001’号图书被订购的总次数。select sum(quantity) from orderbook where bookid = 1001
4查询不同状态订单的数量。select state,count(state) from [order] group by state
5查询各类别数据的库存总量。select sum(stock) from bookgroup by category
6查询被订购2次以上含2次的图书编号、订购次数并按照订购次数从高到低进行排序。select bookid, sum(quantity) from orderbook group bybookid having count(*) =2 order by sum(quantity) desc
三、连接查询使用相应SQL语句完成如下操作
1列出全部用户的用户ID、姓名和状态。select uid,name,userstate from [user],userstate where[user] . state = userstate.usid
2查询购买过‘1001’号图书的用户名、性别及购买时间并按照购买时间降序排列。select name, sex,ordertime from [user] , [order] ,orderbookwhere orderbook.bookid = 1001 and [order] .oid =
orderbook.orderid and [order] . state = 4 and [order] . [user] =[user] .uid order by ordertime desc
3查询性别为‘男’且购买过社科类图书的用户ID、用户名及状态。select uid,name, sex,userstate from [user],userstate where[user] .uid in ( select [user] from [order] where state = 4and [order] .oid in (select orderid from orderbook wherebookid in (select bid from book where category = 2 )) ) and[user] . sex = 1 and [user] . state = userstate.usid或者select uid,name, sex,userstate from
[user],userstate,book,orderbook, [order] where [user] . sex = 1and book.category = 2 and [order] . state = 4 andorderbook.bookid = book.bid and orderbook.orderid =
[order] .oid and [user] . state = userstate.usid and
[order] . [user] = [user] .uid
4查询价格在37元以上含37元且被购买过2次以上的图书名称、价格、 出版社及购买次数并按照购买次数降序排列。
写不出
5查询用户ID为‘102’ 的所有订单号、下单日期及状态。select oid, [user] ,ordertime,orderstate from
[order] ,orderstate where [order] . [user] = 102 and
[order] . state = orderstate.osid
6 查询订单状态为已付款未完成的所有订单的订单号、下单用户、书目名称、书目类别、数量信息并按照订单号排序。
select oid,name,title,category. category, stock from
[order],orderbook, [user],book,category where [order] . state =3 and [order] . [user] = [user] .uid and orderbook.orderid =[order] .oid and orderbook.bookid = book.bid and book.category= category.cid order by oid 看到付款未完成的就一张订单需要排序
四、子查询
1 查询订购次数在平均次数以上的图书编号、 图书名称、图书价格及订购次数并按订购次数排序。
2查询至少包含‘2017003’号订单包含的书目的订单号、下单用户、下单日期及订单状态。select distinct orderid,ordertime,name,orderstate fromorderbook, [order] , [user],orderstate where orderbook.bookidin( select bookid from orderbook where orderbook.orderid =
2017004 ) and [order] . [user] = [user] .uid andorderstate.osid = [user] . state and orderbook.orderid =
[order] .oid
3查询购买过清华大学出版社的书籍的所有人的信息。select distinct [user] .* from [user] , [order] where
[order] .oid in ( select orderid from book,orderbook wherebook.press =清华大学出版社 and book.bid = orderbook.bookid )and [order] . [user] = [user] .uid篇二
SQL语句查询统计SQL语句查询统计悬赏分
100 -解决时间
2017-6-18 17:59
1.查询学生表中所有学生的详细信息 2.查询所有学生的学号、姓名、年龄 3.查询年龄在18岁至20岁之间含18和20岁的信息系IS学生的学号、姓名、年龄及系名 4.查询所有姓王或姓李的学生的姓名、学号、年龄 5.查询成绩不及格的学生学号
要求没有重复 6.查询信息系IS或计算机系CS的学生姓名、年龄、系名结果按系名升序 同一专业按姓名降序排序 7.查询所有信息系学生的总人数 8.查询选修了2号课程的学生人数、最高分、平均分 9.查询各门课程的课程号、选课人数及平均分
10.查询有1门以上不及格的学生学号和不及格课程门数 11.统计各个课程的平均分12.统计各个课程的平均分按平均分降序排列
13.统计每个学生的选课数量14.统计每个学生的选课数量按选课数量升序排列 15.统计各个课程的平均分显示课程名称和平均分 16.统计各个课程的平均分显示课程编号、名称和平均分 17.统计平均分在70分以上的所有课程的平均分显示课程名称和平均分 18.统计每个学生的选课数量显示学生姓名和选课数量 19.统计每个学生的选课数量显示学生学号、姓名和选课数量 20.统计至少选了4门课的所有学生的选课数量显示学生姓名和选课数量
1. select * from学生表2. select学号,姓名,年龄from学生表3. select学号,姓名,年龄from学生表where年龄between 18and 20 and系别= ‘IS’ 4. select学号,姓名,年龄from学生表where姓名like李% or姓名like李% 5 select distinct学号from学生表where成绩60 6. se lect姓名,年龄,系名from学生表where系in ( IS , CS ) order by系名ASC,姓名desc 7
select count(*) from学生表where系= IS 8 selectcount(*) ,max(分数) ,min(分数 from学生表9 select课程号count(*) ,avg(分数 from学生表group by课程号10 select学号 count * from学生表11 select avg 分数 课程号from学生表group by课程号12 select avg 分数 课程号from学生表group by课程号order by avg 分数 13 select count
* 学号from学生表group by学号14 select count * a学号from学生表group by学号order by a 15 select课程名称 avg(分数 from学生表group by课程名16 select课程标号课程名称 avg(分数 from学生表group by课程号课程名17select课程名称 avg(分数 a from学生表where a 70 18 select姓名 count(*) a from学生表group by姓名19 select学号姓名 count(*) a from学生表group by学号姓名20select学生姓名 count(*) a from学生表where a 4 group by学生姓名
三、论述题
1、 现有关系数据库如下
学生学号姓名性别专业 课程课程号课程名学分 学习学号课程号分数 分别用SQL语句实现下列小题1检索所有选修了课程号为“C112”的课程的学生的学号和分数 2检索“英语”专业学生所学课程的信息包括学号、姓名、课程名和分数 3检索“数据库原理”课程成绩高于90分的所有学生的学号、姓名、专业和分数 4检索没学过课程号为“C135”课程的学生信息包括学号姓名和专业 5检索至少学过课程号为“C135”和“C219”的课程的学生的信息包括学号、姓名和2. SELECT
xsb.xh,xm,kcm,fs FROM xsb,kcb,xxb WHERE xsb.xh=xxb.xh ANDkcb.kch=xxb.kch AND zy=外国语 3. select xsb.xh,xm, zy,fsFROM xsb,kcb,xxb where xsb.xh=xxb.xh and kcm=大学英语and fs
90 4. select xsb.xh,xm,zy FROM xsb,kcb,xxb wherexsb.xh=xxb.xh and xsb.xh not in(1,5) SELECT xh,xm,zy FROM xsbWHERE xh NOT IN (SELECT xh FROM xxb WHERE kch= C135 ) 5.SELECT xsb.xh,xm,zy FROM xsb WHERE xsb.xh IN (SELECT xsb.xhFROM xxb X1,xxb X2 WHERE X
1.xh=X2.xh AND X
1.kch= C135 AND X2.kch= C219 )
2、 已知三个表其表名和字段如下
S 学号姓名性别 C 课程编号课程名称学时 SC 学号课程编号分数 。
分别用SQL语句实现下列小题
1、查询得到所有选了课的学生的学号和姓名按姓名降序排序
2、查询得到姓名为“张三”的学生的平均分数
3、查询得到学生人数
4、查询得到姓名为“张三”的学生的总学时数
5、查询“数据库应用技术”课程的平均分数考生答案
SELECT sum(xs) AS ZKS from S,C,SC where SC.kcbh=C.kcbhAND S.xh=SC.xh AND xm=郑恺 SELECT avg(fs) AS ZKS fromS,C,SC where SC.kcbh=C.kcbh AND S.xh=SC.xh AND xm=郑恺篇
三
数据库第三章习题参考答案3-2对于教务管理数据库的三个基本表S(SNO,S NAME, SEX, AGE,S DEPT) SC(S NO,CNO,GRADE)
C(CNO,CNAME,CDEPT,TNAME)试用SQL的查询语句表达下列查询
⑴检索LIU老师所授课程的课程号和课程名。
⑵检索年龄大于23岁的男学生的学号和姓名。
⑶检索学号为201715146的学生所学课程的课程名和任课教师名。
⑷检索至少选修LIU老师所授课程中一门课程的女学生姓名。
⑸检索WA NG同学不学的课程的课程号。
⑹检索至少选修两门课程的学生学号。
⑺检索全部学生都选修的课程的课程号与课程名。
⑻检索选修课程包含LIU老师所授课程的学生学号。
解
⑴SELECT C#,CNAME FROM C WHERE TEACHER=’ LIU’ ;⑵SELECT S#,SNAME FROM S WHERE AGE 23 AND SEX=’ M’ ;⑶SELECTCNAME TEACHER FROM SC,C WHERE SC.C#=C.C# AND
S#=’ 201715146’ ⑷SELECT SNAME (连接查询方式) FROM S,SC,CWHERE S.S#=SC.S# AND SC.C#=C.C# AND TEACHER=’ LIU’ ;或
SELECT SNAME (嵌套查询方式) FROM S WHERE SEX=’ F’ AND S#IN (SELECT S# FROM SC WHERE C# IN (SELECT C# FROM C WHERETEACHER=’ L IU’ ) )或
SELECT SNAME (存在量词方式) SEX=’ F’ ANDFROM S WHERESEX=’ F’ AND EXISTS(SELECT* FROM SC WHERE SC.S#=S.S# ANDEXISTS(SELECT * FROM C WHERE C.C#=SC.C# AND TEACHER=’ LIU’ ))
⑸SELECT C# FROM C WHERE NOT EXISTS (SELECT * FROM S,SCWHERE S.S#=SC.S# AND SC.C#=C.C# AND SNAME=’ WANG)) ;⑹SELECTDISTINCT X.S# FROM SC AS X SC AS Y WHERE X.S#=Y.S# AND
X.C#!=Y.C#;⑺SELECT C#.CNAME FROM C WHERE NOT EXISTS(SELECT * FROM S WHERE NOT EXISTS (SELECT * FROM SC WHERES#=S.S# AND C#=C.C#) ) ;⑻SELECT DISTINCT S# FROM SC AS XWHERE NOT EXISTIS (SELECT * FROM C WHERE TEACHER=’ LIU’ ANDNOT EXISTS (SELECT * FROM SC AS Y WHERE Y.S#=X.S# AND
Y.C#=C.C#) ) ; 3-3试用S QL查询语句表达下列对3.2题中教务管理数据库的三个基本表S、 SC、 C查询
⑴统计有学生选修的课程门数。
⑵求选修4号课程的学生的平均年龄。
⑶求LIU老师所授课程的每门课程的学生平均成绩。
⑷统计每门课程的学生选修人数超过10人的课程才统计 。要求输出课程号和选修人数查询结果按人数降序排列若人数相同按课程号升序排列。
⑸检索学号比WANG同学大而年龄比他小的学生姓名。
⑹检索姓名以WA NG打头的所有学生的姓名和年龄。
⑺在SC中检索成绩为空值的学生学号和课程号。
⑻求年龄大于女同学平均年龄的男学生姓名和年龄。
⑼求年龄大于所有女同学年龄的男学生姓名和年龄。
解
⑴SELECT COUNT(DISTINCT C#) FROM SC;⑵SELECT AVG(AGE)FROM S,SC WHERE S.S#=SC.S# AND C#=’ 4’ AND SEX=’ F’ ;⑶
速云怎么样?速云,国人商家,提供广州移动、深圳移动、广州茂名联通、香港hkt等VDS和独立服务器。现在暑期限时特惠,力度大。广州移动/深圳移动/广东联通/香港HKT等9折优惠,最低月付9元;暑期特惠,带宽、流量翻倍,深港mplc免费试用!点击进入:速云官方网站地址速云优惠码:全场9折优惠码:summer速云优惠活动:活动期间,所有地区所有配置可享受9折优惠,深圳/广州地区流量计费VDS可选择流量翻...
GigsGigsCloud新上了洛杉矶机房国际版线路VPS,基于KVM架构,采用SSD硬盘,年付最低26美元起。这是一家成立于2015年的马来西亚主机商,提供VPS主机和独立服务器租用,数据中心包括美国洛杉矶、中国香港、新加坡、马来西亚和日本等。商家VPS主机基于KVM架构,所选均为国内直连或者优化线路,比如洛杉矶机房有CN2 GIA、AS9929或者高防线路等。下面列出这款年付VPS主机配置信息...
SoftShellWeb是一家2019年成立的国外主机商,商家在英格兰注册,提供的产品包括虚拟主机和VPS,其中VPS基于KVM架构,采用SSD硬盘,提供IPv4+IPv6,可选美国(圣何塞)、荷兰(阿姆斯特丹)和台湾(台北)等机房。商家近期推出台湾和荷兰年付特价VPS主机,其中台湾VPS最低年付49美元,荷兰VPS年付24美元起。台湾VPSCPU:1core内存:2GB硬盘:20GB SSD流量...