zoukankan      html  css  js  c++  java
  • 【10】查询练习:as、union、avg、group by、is null

    1.as取别名

    查询所有教师和同学的姓名、性别、生日:

    错误查询:

    mysql> select stu_name,tea_name,stu_sex,tea_sex,stu_birth,tea_birth from student,teacher;
    +----------+-------------+---------+---------+---------------------+---------------------+
    | stu_name | tea_name    | stu_sex | tea_sex | stu_birth           | tea_birth           |
    +----------+-------------+---------+---------+---------------------+---------------------+
    | JiaWei   | LiMei       | F       | F       | 1993-07-28 00:00:00 | 1983-02-24 00:00:00 |
    | JiaWei   | MaDi        | F       | F       | 1993-07-28 00:00:00 | 1984-01-23 00:00:00 |
    | JiaWei   | LiZhe       | F       | F       | 1993-07-28 00:00:00 | 1974-01-23 00:00:00 |
    | JiaWei   | ShaoGuoYing | F       | F       | 1993-07-28 00:00:00 | 1985-06-17 00:00:00 |
    | JiaWei   | Susan       | F       | F       | 1993-07-28 00:00:00 | 1985-07-18 00:00:00 |
    | JiaWei   | Mary        | F       | F       | 1993-07-28 00:00:00 | 1990-05-02 00:00:00 |
    | DingQi   | LiMei       | F       | F       | 1994-08-15 00:00:00 | 1983-02-24 00:00:00 |
    | DingQi   | MaDi        | F       | F       | 1994-08-15 00:00:00 | 1984-01-23 00:00:00 |
    | DingQi   | LiZhe       | F       | F       | 1994-08-15 00:00:00 | 1974-01-23 00:00:00 |
    | DingQi   | ShaoGuoYing | F       | F       | 1994-08-15 00:00:00 | 1985-06-17 00:00:00 |
    | DingQi   | Susan       | F       | F       | 1994-08-15 00:00:00 | 1985-07-18 00:00:00 |
    | DingQi   | Mary        | F       | F       | 1994-08-15 00:00:00 | 1990-05-02 00:00:00 |
    | Baker    | LiMei       | F       | F       | 1999-09-22 00:00:00 | 1983-02-24 00:00:00 |
    | Baker    | MaDi        | F       | F       | 1999-09-22 00:00:00 | 1984-01-23 00:00:00 |
    | Baker    | LiZhe       | F       | F       | 1999-09-22 00:00:00 | 1974-01-23 00:00:00 |
    | Baker    | ShaoGuoYing | F       | F       | 1999-09-22 00:00:00 | 1985-06-17 00:00:00 |
    | Baker    | Susan       | F       | F       | 1999-09-22 00:00:00 | 1985-07-18 00:00:00 |
    | Baker    | Mary        | F       | F       | 1999-09-22 00:00:00 | 1990-05-02 00:00:00 |
    | Bob      | LiMei       | M       | F       | 1998-04-25 00:00:00 | 1983-02-24 00:00:00 |
    | Bob      | MaDi        | M       | F       | 1998-04-25 00:00:00 | 1984-01-23 00:00:00 |
    | Bob      | LiZhe       | M       | F       | 1998-04-25 00:00:00 | 1974-01-23 00:00:00 |
    | Bob      | ShaoGuoYing | M       | F       | 1998-04-25 00:00:00 | 1985-06-17 00:00:00 |
    | Bob      | Susan       | M       | F       | 1998-04-25 00:00:00 | 1985-07-18 00:00:00 |
    | Bob      | Mary        | M       | F       | 1998-04-25 00:00:00 | 1990-05-02 00:00:00 |
    | LinJie   | LiMei       | M       | F       | 1994-06-12 00:00:00 | 1983-02-24 00:00:00 |
    | LinJie   | MaDi        | M       | F       | 1994-06-12 00:00:00 | 1984-01-23 00:00:00 |
    | LinJie   | LiZhe       | M       | F       | 1994-06-12 00:00:00 | 1974-01-23 00:00:00 |
    | LinJie   | ShaoGuoYing | M       | F       | 1994-06-12 00:00:00 | 1985-06-17 00:00:00 |
    | LinJie   | Susan       | M       | F       | 1994-06-12 00:00:00 | 1985-07-18 00:00:00 |
    | LinJie   | Mary        | M       | F       | 1994-06-12 00:00:00 | 1990-05-02 00:00:00 |
    | XieZhou  | LiMei       | M       | F       | 1995-03-11 00:00:00 | 1983-02-24 00:00:00 |
    | XieZhou  | MaDi        | M       | F       | 1995-03-11 00:00:00 | 1984-01-23 00:00:00 |
    | XieZhou  | LiZhe       | M       | F       | 1995-03-11 00:00:00 | 1974-01-23 00:00:00 |
    | XieZhou  | ShaoGuoYing | M       | F       | 1995-03-11 00:00:00 | 1985-06-17 00:00:00 |
    | XieZhou  | Susan       | M       | F       | 1995-03-11 00:00:00 | 1985-07-18 00:00:00 |
    | XieZhou  | Mary        | M       | F       | 1995-03-11 00:00:00 | 1990-05-02 00:00:00 |
    | MingHui  | LiMei       | F       | F       | 1998-08-09 00:00:00 | 1983-02-24 00:00:00 |
    | MingHui  | MaDi        | F       | F       | 1998-08-09 00:00:00 | 1984-01-23 00:00:00 |
    | MingHui  | LiZhe       | F       | F       | 1998-08-09 00:00:00 | 1974-01-23 00:00:00 |
    | MingHui  | ShaoGuoYing | F       | F       | 1998-08-09 00:00:00 | 1985-06-17 00:00:00 |
    | MingHui  | Susan       | F       | F       | 1998-08-09 00:00:00 | 1985-07-18 00:00:00 |
    | MingHui  | Mary        | F       | F       | 1998-08-09 00:00:00 | 1990-05-02 00:00:00 |
    | NanNan   | LiMei       | F       | F       | 1995-10-20 00:00:00 | 1983-02-24 00:00:00 |
    | NanNan   | MaDi        | F       | F       | 1995-10-20 00:00:00 | 1984-01-23 00:00:00 |
    | NanNan   | LiZhe       | F       | F       | 1995-10-20 00:00:00 | 1974-01-23 00:00:00 |
    | NanNan   | ShaoGuoYing | F       | F       | 1995-10-20 00:00:00 | 1985-06-17 00:00:00 |
    | NanNan   | Susan       | F       | F       | 1995-10-20 00:00:00 | 1985-07-18 00:00:00 |
    | NanNan   | Mary        | F       | F       | 1995-10-20 00:00:00 | 1990-05-02 00:00:00 |
    +----------+-------------+---------+---------+---------------------+---------------------+
    View Code

    学生的:

    mysql> select stu_name,stu_sex,stu_birth from student;
    +----------+---------+---------------------+
    | stu_name | stu_sex | stu_birth           |
    +----------+---------+---------------------+
    | JiaWei   | F       | 1993-07-28 00:00:00 |
    | DingQi   | F       | 1994-08-15 00:00:00 |
    | Baker    | F       | 1999-09-22 00:00:00 |
    | Bob      | M       | 1998-04-25 00:00:00 |
    | LinJie   | M       | 1994-06-12 00:00:00 |
    | XieZhou  | M       | 1995-03-11 00:00:00 |
    | MingHui  | F       | 1998-08-09 00:00:00 |
    | NanNan   | F       | 1995-10-20 00:00:00 |
    +----------+---------+---------------------+

    教师的:

    mysql> select tea_name,tea_sex,tea_birth from teacher;
    +-------------+---------+---------------------+
    | tea_name    | tea_sex | tea_birth           |
    +-------------+---------+---------------------+
    | LiMei       | F       | 1983-02-24 00:00:00 |
    | MaDi        | F       | 1984-01-23 00:00:00 |
    | LiZhe       | F       | 1974-01-23 00:00:00 |
    | ShaoGuoYing | F       | 1985-06-17 00:00:00 |
    | Susan       | F       | 1985-07-18 00:00:00 |
    | Mary        | F       | 1990-05-02 00:00:00 |
    +-------------+---------+---------------------+

    使用union时:

    mysql> select stu_name,stu_sex,stu_birth from student
        -> union
        -> select tea_name,tea_sex,tea_birth from teacher;
    +-------------+---------+---------------------+
    | stu_name    | stu_sex | stu_birth           |
    +-------------+---------+---------------------+
    | JiaWei      | F       | 1993-07-28 00:00:00 |
    | DingQi      | F       | 1994-08-15 00:00:00 |
    | Baker       | F       | 1999-09-22 00:00:00 |
    | Bob         | M       | 1998-04-25 00:00:00 |
    | LinJie      | M       | 1994-06-12 00:00:00 |
    | XieZhou     | M       | 1995-03-11 00:00:00 |
    | MingHui     | F       | 1998-08-09 00:00:00 |
    | NanNan      | F       | 1995-10-20 00:00:00 |
    | LiMei       | F       | 1983-02-24 00:00:00 |
    | MaDi        | F       | 1984-01-23 00:00:00 |
    | LiZhe       | F       | 1974-01-23 00:00:00 |
    | ShaoGuoYing | F       | 1985-06-17 00:00:00 |
    | Susan       | F       | 1985-07-18 00:00:00 |
    | Mary        | F       | 1990-05-02 00:00:00 |
    +-------------+---------+---------------------+

    更改字段名称:

    mysql> select tea_name as name,tea_sex as sex,tea_birth as birthday from teacher
        -> union
        -> select stu_name,stu_sex,stu_birth from student;
    +-------------+-----+---------------------+
    | name        | sex | birthday            |
    +-------------+-----+---------------------+
    | LiMei       | F   | 1983-02-24 00:00:00 |
    | MaDi        | F   | 1984-01-23 00:00:00 |
    | LiZhe       | F   | 1974-01-23 00:00:00 |
    | ShaoGuoYing | F   | 1985-06-17 00:00:00 |
    | Susan       | F   | 1985-07-18 00:00:00 |
    | Mary        | F   | 1990-05-02 00:00:00 |
    | JiaWei      | F   | 1993-07-28 00:00:00 |
    | DingQi      | F   | 1994-08-15 00:00:00 |
    | Baker       | F   | 1999-09-22 00:00:00 |
    | Bob         | M   | 1998-04-25 00:00:00 |
    | LinJie      | M   | 1994-06-12 00:00:00 |
    | XieZhou     | M   | 1995-03-11 00:00:00 |
    | MingHui     | F   | 1998-08-09 00:00:00 |
    | NanNan      | F   | 1995-10-20 00:00:00 |
    +-------------+-----+---------------------+

    2.查询成绩比该课程平均成绩低的同学的成绩表

    mysql> select * from score;
    +---------+----------+--------+
    | stu_num | cour_num | degree |
    +---------+----------+--------+
    | 11422   | 3-105    |     92 |
    | 11423   | 1-245    |     84 |
    | 11423   | 2-271    |     75 |
    | 11424   | 4-321    |     75 |
    | 11425   | 2-271    |     89 |
    | 11426   | 1-245    |     61 |
    | 11426   | 2-271    |     82 |
    | 11427   | 1-245    |     78 |
    +---------+----------+--------+

    平均值:

    mysql> select cour_num,avg(degree) from score group by cour_num;
    +----------+-------------+
    | cour_num | avg(degree) |
    +----------+-------------+
    | 1-245    |     74.3333 |
    | 2-271    |     82.0000 |
    | 3-105    |     92.0000 |
    | 4-321    |     75.0000 |
    +----------+-------------+

    复制表数据做条件查询:

    mysql> select * from score a
        -> where degree<(select avg(degree) from score b where a.cour_num=b.cour_num);
    +---------+----------+--------+
    | stu_num | cour_num | degree |
    +---------+----------+--------+
    | 11423   | 2-271    |     75 |
    | 11426   | 1-245    |     61 |
    +---------+----------+--------+

     3.空值检查

    mysql> select * from pet where death is null;
    +----------+-------------+---------+------+------------+-------+
    | name     | owner       | species | sex  | birth      | death |
    +----------+-------------+---------+------+------------+-------+
    | Puffball | Diane       | hamster | f    | 2000-09-22 | NULL  |
    | Cuihua   | ZhouXingChi | DOG     | M    | 1999-09-21 | NULL  |
    | DNN      | Huimin      | Cat     | f    | 2018-07-07 | NULL  |
    | Claws    | Gwen        | cat     | m    | 1994-03-17 | NULL  |
    | Buffy    | Harold      | dog     | f    | 1989-05-13 | NULL  |
    | Fang     | Benny       | dog     | m    | 1909-08-27 | NULL  |
    | Chirpy   | Gwen        | bird    | f    | 1989-09-01 | NULL  |
    | Slim     | Benny       | snake   | m    | 2006-04-21 | NULL  |
    | Puffball | Diane       | hamster | f    | 2009-10-12 | NULL  |
    +----------+-------------+---------+------+------------+-------+
    
    mysql> select * from pet where death is not null;
    +--------+-------+---------+------+------------+------------+
    | name   | owner | species | sex  | birth      | death      |
    +--------+-------+---------+------+------------+------------+
    | Bowser | Diane | dog     | m    | 1979-08-31 | 1995-07-29 |
    +--------+-------+---------+------+------------+------------+
  • 相关阅读:
    BZOJ_3589_动态树_容斥原理+树链剖分
    吴裕雄--天生自然ORACLE数据库学习笔记:SQL语言基础
    吴裕雄--天生自然ORACLE数据库学习笔记:常用SQL*Plus命令
    吴裕雄--天生自然python数据清洗与数据可视化:MYSQL、MongoDB数据库连接与查询、爬取天猫连衣裙数据保存到MongoDB
    吴裕雄--天生自然PYTHON爬虫:使用Selenium爬取大型电商网站数据
    吴裕雄--天生自然PYTHON爬虫:使用Scrapy抓取股票行情
    吴裕雄--天生自然PYTHON爬虫:爬取某一大型电商网站的商品数据(效率优化以及代码容错处理)
    吴裕雄--天生自然PYTHON爬虫:爬取某一大型电商网站的商品数据(优化)
    吴裕雄--天生自然神经网络与深度学习实战Python+Keras+TensorFlow:从零开始实现识别手写数字的神经网络
    吴裕雄--天生自然神经网络与深度学习实战Python+Keras+TensorFlow:神经网络的理论基础
  • 原文地址:https://www.cnblogs.com/direwolf22/p/12684016.html
Copyright © 2011-2022 走看看