重新学习数据库(1)

单元概述

通过本章的学习能够了解MySQL结构查询语言的概念,掌握SELECT查询语句的基本语法,掌握SELECT查询语句中过滤条件的使用,掌握过滤条件中比较运算符和逻辑运算符的使用,掌握查询结果的排序等

单元练习:

  1. 查询入职时间在1982-7-9之后,并且不从事SALESMAN工作的员工姓名、入职时间、职位。
    SELECT ename,hiredate,job
    FROM emp
    WHERE hiredate>’1982-7-9′
    AND job<> ‘SALESMAN’;
  2. 查询员工姓名的第三个字母是a的员工姓名。
    SELECT ename
    FROM emp
    WHERE ename
    LIKE ‘__a%’;
  3. 查询除了10、20号部门以外的员工姓名、部门编号。
    SELECT ename,deptno
    FROM emp
    WHERE deptno
    not in (10,20);
  4. 查询部门号为30号员工的信息,先按工资降序排序,再按姓名升序排序。
    SELECT *
    FROM emp
    WHERE deptno = 30
    ORDER BY sal DESC, ename ASC;
  5. 查询没有上级的员工(经理号为空)的员工姓名。
    SELECT ename
    FROM emp
    WHERE mgr is null;
  6. 查询工资大于等于4500并且部门为10或者20的员工的姓名\工资、部门编号。
    SELECT ename,sal,deptno
    FROM emp
    WHERE sal > 4500
    AND deptno in (10,20);

课后练习:

  1. 查询入职日期在82年至85年的员工姓名,入职日期。
  2. 查询月薪在3000到5000的员工姓名,月薪。
  3. 查询部门编号为10或者20的员工姓名,部门编号。
  4. 查询经理编号为7902, 7566, 7788的员工姓名,经理编号 SELECT ename,hiredate FROM emp WHERE hiredate BETWEEN ‘1982-01-01’ AND ‘1985-12-31’ SELECT ename,sal FROM emp WHERE sal BETWEEN 3000 and 5000 SELECT ename,deptno FROM emp WHERE deptno IN (10,20) SELECT ename,mgr FROM emp WHERE mgr in (7902,7566,7788)
  5. 查询员工姓名以W开头的员工姓名。
  6. 查询员工姓名倒数第2个字符为T的员工姓名。
  7. 查询奖金为空的员工姓名,奖金。 SELECT ename FROM emp WHERE ename LIKE ‘W%’ SELECT ename FROM emp WHERE ename LIKE ‘%T_’ SELECT ename,comm FROM emp WHERE comm is null 1.查询工资超过2000并且职位是 MANAGER或SALESMAN的员工姓名、职位、工资 SELECT ename,job,sal FROM emp WHERE hiredate >2000 AND job IN (‘MANAGER’,’SALESMAN’)
  8. 查询部门在10或者20,并且工资在3000到5000之间的员工姓名、部门、工资。
  9. 查询入职日期在81年,并且职位不是SALES开头的员工姓名、入职日期、职位。
  10. 查询职位为SALESMAN或MANAGER,部门编号为10或者20,姓名包含A的员工姓名、职位、部门编号。 SELECT ename,hiredate,salSELECT ename,hiredate,sal FROM emp WHERE deptno in (10,20)and sal BETWEEN 3000 and 5000 SELECT ename,hiredate,job FROM emp WHERE hiredate LIKE ‘1981%’and job not like ‘SALES%’ SELECT ename,job,deptno FROM emp WHERE job in (‘SALESMAN’,’MANAGER’)AND deptno IN (10,20)AND ename LIKE ‘%A%’AND ename LIKE ‘%A%’ 1.查询部门在20或30的员工姓名,部门编号,并按照工资升序排序。 SELECT ename,deptno FROM emp WHERE deptno IN (20,30) ORDER BY sal ASC 2.查询工资在2000-3000之间,部门不在10号的员工姓名,部门编号,工资,并按照部门升序,工资降序排序。 SELECT ename,deptno,sal FROM emp WHERE sal BETWEEN 2000 AND 3000 AND deptno <> 10 ORDER BY deptno ASC,sal DESC 3.查询入职日期在82年至83年之间,职位以SALES或者MAN开头的员工姓名,入职日期,职位,并按照入职日期降序排序 SELECT ename,hiredate,job FROM emp WHERE hiredate BETWEEN ‘1982-01-01’ AND ‘1982-12-31’AND (job like ‘SALES%’ or job like ‘MAN%’) ORDER BY hiredate DESC

1.查询入职日期最早的前5名员工姓名,入职日期

SELECT ename,hiredate FROM emp ORDER BY hiredate ASC LIMIT 0,5;

2.查询20号部门下入职日期最早的前2名员工姓名,入职日期。

SELECT ename,hiredate FROM emp,dept WHERE emp.deptno=dept.deptno AND dept.deptno=20 ORDER BY hiredate ASC LIMIT 0,2;

3.按照每页显示5条记录,分别查询第1页,第2页,第3页信息,要求显示员工姓名、入职日期、部门编号 。

SELECT ename,hiredate,deptno FROM emp LIMIT 0,5

SELECT ename,hiredate,deptno FROM emp LIMIT 5,5

SELECT ename,hiredate,deptno FROM emp LIMIT 10,5

Original: https://www.cnblogs.com/Aegeansea666/p/16484379.html
Author: Aegeansea666
Title: 重新学习数据库(1)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/505202/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Tomcat的安装和使用

    一·Tomcat 安装 1、Toncat下载 通过访问Tomcat官方网站下载Tomcat文件。 Tomcat提供了压缩版和安装版,还区分 32 位和 64 位系统版。下载的时候注…

    数据库 2023年6月11日
    0140
  • jdbc分页

    一、最低级分页 resources下的db.properties db.driver=com.mysql.cj.jdbc.Driver db.url=jdbc:mysql://lo…

    数据库 2023年6月9日
    0161
  • 图数据挖掘!使用图分析+AI进行保险欺诈检测 ⛵

    💡 作者:韩信子@ShowMeAI📘 机器学习实战系列:https://www.showmeai.tech/tutorials/41📘 本文地址:https://www.showm…

    数据库 2023年6月14日
    0128
  • windows下使用pm2守护进程对laravel队列进行管理

    我们都知道在使用laravel的消息队列时,都需要一个守护进程对其进行管理 否则在服务器重启或者其他异常都会导致队列中断从而功能失效 当然,大部分项目都是在linux下运行,则可以…

    数据库 2023年6月14日
    0128
  • Isilon 的OneFs常见操作命令(一)

    1背景知识: Isilon的oneFS是基于Free BSD的,FreeBSD 是一种类UNIX操作系统,因此有些类似Linux操作系统的常见命令可以直接使用,但有些又略微差别,需…

    数据库 2023年6月14日
    0396
  • MySQL CREATE TABLE 简单设计模板交流

    我们也可以多台机器部署, 设置不同 AUTO_INCREMENT step, 让每个 sequece 产生不同号码. 例如部署 step = 2 个服务结点, 并行获取数据. 一个…

    数据库 2023年5月24日
    0179
  • MySQL实战45讲 15

    15 | 答疑文章(一):日志和索引相关问题 日志相关 binlog(归档日志)和redo log(重做日志)配合崩溃恢复,在两阶段提交的不同瞬间,MySQL如果发生异常重启,是怎…

    数据库 2023年6月16日
    0182
  • Linux 实用命令

    实用命令: 1、查看端口占用情况 &#x67E5;&#x770B;&#x8BE5;&#x7AEF;&#x53E3;&#x662F;&…

    数据库 2023年6月16日
    0114
  • 批量新建域用

    前几个章节我们讲到Windows Server 2016-图形化新建域用户(一),本章节我们简单讲解下如何通过命令批量创建域用户,以便高效完成日常工作中实际批量创建用户需求,内容涉…

    数据库 2023年6月14日
    0126
  • 记一次vcenter连接esxi失败问题排查(443端口不通)

    vecenter错误 esxi宿主机重启后,vcenter连接esxi提示超时,使用vmware客户端连接esxi也提示超时,开始介入排查。 故障排查 如何进入命令终端 运行alt…

    数据库 2023年6月9日
    0171
  • MySQL之存储引擎、基本数据类型及约束条件

    一、存储引擎 数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,…

    数据库 2023年5月24日
    0125
  • NO.2 Windows桌面图标-间距参数调整

    遇到如下问题: 桌面图标自动排序后间隔过大,且如图二这种指向图标能看到图标之间的间隔虚框,此方法可调整虚框的水平和垂直距离,即调整图标之间的间距。 测试电脑: 华为 mateboo…

    数据库 2023年6月14日
    0156
  • [Mysql]如何设置root密码(8.0+)

    在ubuntu上安装mysql时默认root账号是没有密码的,可以先用 mysql进入mysql,然后输入下面这个( mynewpassword改成要设置的密码): ALTER U…

    数据库 2023年6月16日
    0135
  • Mysql数据库存取原理及性能优化

    一、Mysql的系统架构图 二、Mysql存储引擎 Mysql中的数据是通过一定的方式存储在文件或者内存中的,任何方式都有不同的存储、查找和更新机制,这意味着选择不同的方式对于数据…

    数据库 2023年6月14日
    0166
  • gauss正则找汉字

    select substring( ‘沙特阿拉伯6.20’ from ‘[\u4E00-\u9FA5]{2,5}’ )返回 ‘沙特阿拉伯’ Original: https://ww…

    数据库 2023年6月16日
    0117
  • Mysql索引底层数据结构与算法

    一.索引概述是什么:索引是帮助MySQL高效获取数据的排好序的数据结构,索引叫”键”,优化好一个索引,可以提高数倍的性能, 类似于字典的音序表为什么要键索引…

    数据库 2023年6月11日
    0172
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球