免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1143 | 回复: 0
打印 上一主题 下一主题

SQL第三阶段测试(一):国庆假期综合测试 [复制链接]

论坛徽章:
2
IT运维版块每日发帖之星
日期:2015-06-26 22:20:00IT运维版块每日发帖之星
日期:2015-06-29 22:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-23 02:35 |只看该作者 |倒序浏览

测试内容:10章--13章

1、返回以下格式的查找结果:
张三(男):24岁
要求生成一个新列,列名为result,该列按上述格式显示出人名只有两个字,email地址长度大于15个字符的所有命中记录的所有列(包含新列,且email地址全部转换为大写);

2、返回四个值,分别是数据表中的总人数,年龄的最大值、最小值和平均值,并分别命名列名为total_num、max_age、min_age和avg_age;

3、返回一个值avg_age,要求统计的是除去一个年纪最大的和年纪最小的之后的其他人年龄的平均值;

4、按性别统计辽宁省的党员数量;

5、统计出不同省份不同性别的党员与非党员数量最多的组的人数;

6、查找出年纪较大的(不是最大的)前5个人,并按性别统计人数。


答案:
1、答:
select id,name,gender,home, upper(email) as email, age, party,concat(name,':(',cast(age as char),')','岁
') as result from student where length(email) > 15


2、答:
select count(id) as total_num, max(age) as max_age, min(age) as min_age,avg(age) as avg_age from student


3、答:
select avg(age) as avg_age from student where age != (
   select age from student order by age limit 1
) and age != (
   select age from student order by age desc limit 1
)

4、答:
SELECT count(*) FROM `student` where party = 1 and home like '辽宁省%' group by gender

5、答:
select result from(
   SELECT count(*) as result FROM student group by home like '辽宁省%',gender
) as foo order by result desc limit 1

6、答:
SELECT count(*) FROM ( 
   select * from student order by age desc limit 1,5
) as tmp group by gender
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP