几道经典的SQL笔试题目(有答案) |
您所在的位置:网站首页 › sql面试笔试题 › 几道经典的SQL笔试题目(有答案) |
几道经典的SQL笔试题目(有答案)
(1)表名:购物信息购物人 商品名称 数量A 甲 2B 乙 4 C 丙 1 A 丁 2B 丙 5……(其他用户实验的记录大家可自行插入) 给出所有购入商品为两种或两种以上的购物人记录 答:select * from 购物信息 where 购物人 in (select 购物人 from 购物信息 group by 购物人 having count(*) >= 2); (2)表名:成绩表姓名 课程 分数 张三 语文 81张三 数学 75李四 语文 56李四 数学 90王五 语文 81王五 数学 100王五 英语 49……(其他用户实验的记录大家可自行插入) 给出成绩全部合格的学生信息(包含姓名、课程、分数),注:分数在60以上评为合格 答:select * from 成绩表 where 姓名 not in (select distinct 姓名 from 成绩表 where 分数 < 60)或者:select * from 成绩表 where 姓名 in (select 姓名 from 成绩表 group by 姓名 having min(分数) >=60) (3)表名:商品表名称 产地 进价苹果 烟台 2.5苹果 云南 1.9苹果 四川 3西瓜 江西 1.5西瓜 北京 2.4……(其他用户实验的记录大家可自行插入) 给出平均进价在2元以下的商品名称 答:select 名称 from 商品表 group by 名称 having avg(进价) < 2 (4)表名:高考信息表准考证号 科目 成绩 2006001 语文 1192006001 数学 1082006002 物理 1422006001 化学 1362006001 物理 1272006002 数学 1492006002 英语 1102006002 语文 1052006001 英语 982006002 化学 129……(其他用户实验的记录大家可自行插入) 给出高考总分在600以上的学生准考证号 答:select 准考证号 from 高考信息表 group by 准考证号 having sum(成绩) > 600 (5)表名:高考信息表准考证号 数学 语文 英语 物理 化学2006001 108 119 98 127 1362006002 149 105 110 142 129……(其他用户实验的记录大家可自行插入) 给出高考总分在600以上的学生准考证号 答:select 准考证号 from 高考信息表 where (数学+语文+英语+物理+化学) > 600 (四部分)(一)表名:club id gender age 67 M 19 68 F 30 69 F 27 70 F 16 71 M 32……(其余测试数据请自行插入) 查询出该俱乐部里男性会员和女性会员的总数 答:select gender,count(id) from club group by gender (二)表名:teamID(number型) Name(varchar2型)1 a2 b3 b4 a5 c6 c要求:执行一个删除语句,当Name列上有相同时,只保留ID这列上值小的例如:删除后的结果应如下:ID(number型) Name(varchar2型)1 a2 b5 c请写出SQL语句。 delete from team where id not in (select min(id) from team group by name) (三)表名:student name course score张青 语文 72王华 数学 72张华 英语 81张青 物理 67李立 化学 98张燕 物理 70张青 化学 76 查询出“张”姓学生中平均成绩大于75分的学生信息 答:select * from student where name in (select name from studentwhere name like '张%' group by name having avg(score) > 75) SQL Server中学员信息表--STUDENT(字段包括: 姓名﹑年龄和居住地址)如图三:
图三 用SQL语句查询年龄小于平均年龄的学员的姓名、居住地址。 select s.studentName,s.studentAddress from STUDENT s where s.studentAge < (Select avg(studentAge) from STUDENT)
|
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |