• 几道经典的SQL笔试题目


     

    几道经典的SQL笔试题目(有答案)

    (1)表名:购物信息

    购物人      商品名称     数量

    A            甲          2

    B            乙          4

    C            丙          1

    A            丁          2

    B            丙          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     语文       119

    2006001     数学       108

    2006002     物理       142

    2006001     化学       136

    2006001     物理       127

    2006002     数学       149

    2006002     英语       110

    2006002            语文       105

    2006001            英语        98

    2006002     化学       129

    ……

    (其他用户实验的记录大家可自行插入)

    给出高考总分在600以上的学生准考证号

    答:select 准考证号 from 高考信息表 group by 准考证号 having sum(成绩) > 600

    (5)表名:高考信息表

    准考证号        数学        语文        英语        物理        化学

    2006001                108         119         98        127         136

    2006002                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

    (二)表名:team

    ID(number型) Name(varchar2型)

    1                  a

    2                  b

    3                  b

    4                  a

    5                  c

    6                  c

    要求:执行一个删除语句,当Name列上有相同时,只保留ID这列上值小的

    例如:删除后的结果应如下:

    ID(number型) Name(varchar2型)

    1                  a

    2                  b

    5                  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 student

    where name like '张%' group by name having avg(score) > 75)

  • 相关阅读:
    firefox打开链接自动跳转至新页面设置
    sql server 查询不为空的字段
    C# 判断ip地址是否正确
    Win7自带功能,刻录光盘遇到的问题
    【一起学源码-微服务】Nexflix Eureka 源码六:在眼花缭乱的代码中,EurekaClient是如何注册的?
    【一起学源码-微服务】Nexflix Eureka 源码五:EurekaClient启动要经历哪些艰难险阻?
    【一起学源码-微服务】Nexflix Eureka 源码四:EurekaServer启动之完成上下文构建及EurekaServer总结
    【一起学源码-微服务】Nexflix Eureka 源码三:EurekaServer启动之EurekaServer上下文EurekaClient创建
    【一起学源码-微服务】Nexflix Eureka 源码二:EurekaServer启动之配置文件加载以及面向接口的配置项读取
    【一起学源码-微服务】Netflix Eureka 源码一:Netflix Eureka 源码初探,我们为什么要读源码?
  • 原文地址:https://www.cnblogs.com/u0mo5/p/4227569.html
Copyright © 2020-2023  润新知