目录

1. 数据库的基本查询

1.1 简单的记录查询

1.2 使用列别名

2.  数据分页查询

(1)查询前五行数据

(2)查询 11 ~  15 行数据

3. 结果集排序

3.1 单关键字排序

(1)升序排列

(2)降序排列

(3)按照名字降序排列

3.2 多关键字排序

(1)按照 薪资降序 + 入职日期升序  查询

(2)部门升序 + 薪资降序 查询

3.3 排序 + 分页

(1)薪资 默认升序排列 1 ~ 5 行数据

4. 去除重复记录

4.1 去除 job 的相同行数据

4.2 去除 job与其他关键字联合 的相同行数据

5. 条件查询

(1)查询部门编号为20  且薪资大于1500 的员工信息

(2)查询部门编号为20 或 30, 且薪资大于 1300 的员工信息

(3)查询部门编号为 10 或 30,且年收入大于17000, 且工龄超过20年

(4)查询部门编号为 10、20、30, 且 工作不是(salesman 或 president),且入职年月早于“1995-01-01”

(5) 查询奖金(comm)为空 的员工信息(带小节)

(6)查询奖金(comm)不为空 的员工信息

(7)查询奖金(comm)不为空 薪资在1500与2500之前 的员工信息

(8) 查询奖金(comm)不为空 且薪资在1500与3000之前 姓名中包含A 的员工信息

(9)查询姓名为“__RD”的员工

(10)通过正则表达式查询  长度为2~4个字的汉字字符

(11) 逻辑运算符

(12)查询 员工编号不为10、20 的员工信息

(13)查询 (员工编号不为10、20) 异或 (薪资大于1800) 的员工信息 

(14) 按位运算符

(15) where 子句的注意事项

6. 各种子句的执行顺序


前置知识总结:


示例数据库文件:

通过网盘分享的文件:demo.sql
链接: https://pan.baidu.com/s/1iUKSMScC1PXtbOFFaKm-vQ 提取码: i5hb 复制这段内容后打开百度网盘手机App,操作更方便哦




1. 数据库的基本查询

1.1 简单的记录查询

select * from t_emp;

select empno, ename, sal, deptno from t_emp;

1.2 使用列别名

select empno, ename, sal*14 as "year-income" from t_emp;

2.  数据分页查询

(1)查询前五行数据

方式一:

# 查询 1 ~ 5 行数据
select empno, ename, sal, deptno from t_emp limit 0,5;

 方式二:

# 查询 1 ~ 5 行数据
select empno, ename, sal, deptno from t_emp limit 5;

(2)查询 11 ~  15 行数据

# 查询 11 ~ 15 行数据
select empno, ename, sal, deptno from t_emp limit 10,5;

3. 结果集排序

3.1 单关键字排序

(1)升序排列

select empno, ename, sal from t_emp order by sal;select empno, ename, sal from t_emp order by sal asc;
(2)降序排列

# 按照薪资 降序排列
select empno, ename, sal from t_emp order by sal desc;
(3)按照名字降序排列

3.2 多关键字排序

(1)按照 薪资降序 + 入职日期升序  查询

# 按照 薪资降序 + 入职日期升序  查询
select empno, ename, sal, hiredate 
from t_emp 
order by sal desc, hiredate asc;
(2)部门升序 + 薪资降序 查询

# 按照 部门升序 + 薪资降序 查询
select empno, ename, sal, deptno
from t_emp 
order by deptno asc, sal desc;

3.3 排序 + 分页

(1)薪资 默认升序排列 1 ~ 5 行数据

# 按照薪资 默认升序排列 1 ~ 5 行数据
select empno, ename, sal from t_emp order by sal limit 5;

4. 去除重复记录

4.1 去除 job 的相同行数据

select job from t_emp;
# 去除 job 的相同行数据
select distinct job from t_emp;

4.2 去除 job与其他关键字联合 的相同行数据

select job, sal from t_emp;
# 去除 job与其他关键字联合 的相同行数据
select distinct job, sal from t_emp;

5. 条件查询

(1)查询部门编号为20  且薪资大于1500 的员工信息

# 查询部门编号为20  且薪资大于1500 的员工信息
select empno, ename, sal, job from t_emp
where deptno = 20 and sal >= 1500;

(2)查询部门编号为20 或 30, 且薪资大于 1300 的员工信息

# 查询部门编号为20 或 30, 且薪资大于 1300 的员工信息
select empno, ename, sal, jobfrom t_emp 
where (deptno = 20 or deptno = 30) and sal >= 1300;

(3)查询部门编号为 10 或 30,且年收入大于17000, 且工龄超过20年

# 查询部门编号为 10 或 30,且年收入大于17000, 且工龄超过20年
select empno, ename, sal, jobfrom t_emp 
where (deptno = 10 or deptno = 30) 
and (sal + ifnull(comm, 0)) * 12 >= 17000
and datediff(now(), hiredate)/365 >= 20;

(4)查询部门编号为 10、20、30, 且 工作不是(salesman 或 president),且入职年月早于“1995-01-01”

# 查询部门编号为 10、20、30, 且 工作不是(salesman 或 president),且入职年月早于“1995-01-01”
select *from t_emp
where deptno in(10, 20, 30) 
and (job != "SALESMAN" and job != "PRESIDENT" )
and hiredate < "1982-01-01";

(5) 查询奖金(comm)为空 的员工信息(带小节)

# 查询奖金(comm)为空 的员工信息
select *from t_emp 
where comm is null;

(6)查询奖金(comm)不为空 的员工信息

# 查询奖金(comm)不为空 的员工信息
select *from t_emp 
where comm is not null;

(7)查询奖金(comm)不为空 薪资在1500与2500之前 的员工信息

# 查询奖金(comm)不为空 薪资在1500与2500之前 的员工信息
select *from t_emp 
where comm is not null
and sal between 1500 and 2500;

(8) 查询奖金(comm)不为空 且薪资在1500与3000之前 姓名中包含A 的员工信息

# 查询奖金(comm)不为空 且薪资在1500与3000之前 姓名中包含A 的员工信息
select *from t_emp 
where comm is not null
and sal between 1500 and 3000
and ename like "%A%";

(9)查询姓名为“__RD”的员工

# 查询姓名为“__RD”的员工
select *from t_emp 
where ename like "__RD"

(10)通过正则表达式查询  长度为2~4个字的汉字字符

# 通过正则表达式查询  长度为2~4个字的汉字字符
select *from t_emp 
where ename 
regexp "^[\\u4e00-\\u9fa5]{2,4}$";

(11) 逻辑运算符

(12)查询 员工编号不为10、20 的员工信息

# 查询 员工编号不为10、20 的员工信息
select *
from t_emp 
where not deptno in(10, 20);

(13)查询 (员工编号不为10、20) 异或 (薪资大于1800) 的员工信息 

# 查询 (员工编号不为10、20) 异或 (薪资大于1800) 的员工信息  
select empno, ename, deptno, sal
from t_emp
where not deptno in(10, 20) 
xor sal >= 1800;
(14) 按位运算符

14.1 3&7

14.2 3|7

14.3 ~10

14.4 3^7

14.5  10 << 1

15.6 10>>1

(15) where 子句的注意事项

6. 各种子句的执行顺序

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/91170.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/91170.shtml
英文地址,请注明出处:http://en.pswp.cn/diannao/91170.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

宝塔配置pgsql可以远程访问及pdo_pgsql扩展的安装

本地navicat premium 17.0 可以远程访问pgsql v16.1宝塔的软件商店里&#xff0c;找到pgsql管理器&#xff1b;在pgsql管理器里找到客户端认证&#xff1a;第二步&#xff1a;配置修改&#xff0c;CtrlF 查找listen_addresses关键字&#xff1b;第三步&#xff1a;在navicat里配…

SQL进阶:自连接的用法

目录 一、可重排列、排列、组合 1、创建表 2、录入数据 3、获取可重排列的商品名称&#xff08;有序&#xff09; 4、获取排列的商品名称&#xff08;有序&#xff09; 5、获取组合的商品名称&#xff08;无序&#xff09; 6、获取3个元素的组合商品名称&#xff08;无序…

Spark集群优化配置指南

Spark集群优化配置指南 &#x1f4cb; 概述 本文档记录了5节点Spark集群的性能优化配置&#xff0c;主要解决Thrift Server内存不足(OOM)问题和CPU资源利用率低的问题。 文档内容 Spark架构原理: Driver与Executor的关系和工作机制Driver内存配置详解: 三个关键内存参数的作用和…

Layui —— select

前言&#xff1a;记录在修改bug时遇到的一些奇怪问题。遇到的奇怪问题1&#xff1a;项目中引入了 layui&#xff0c;而且也使用了 layui.use 按需导入了需要的组件&#xff0c;但是在页面每次刚初始化的时候去使用layui&#xff0c;控制台都会报 组件未定义的问题&#xff08;正…

代码随想录day32dp1

文章目录509. 斐波那契数70. 爬楼梯746. 使用最小花费爬楼梯确定dp数组&#xff08;dp table&#xff09;以及下标的含义 确定递推公式 dp数组如何初始化 确定遍历顺序 举例推导dp数组509. 斐波那契数 题目链接 文章讲解 class Solution { public:int fib(int n) {// 1. 确定…

RedisJSON 技术揭秘`JSON.ARRTRIM`用窗口裁剪,让数组保持“刚刚好”

1、指令速查 JSON.ARRTRIM <key> <path> <start> <stop>key&#xff1a;Redis 键名path&#xff1a;JSONPath&#xff0c;默认 $ 根&#xff1b;可用 .[*]/.. 多路径匹配start / stop&#xff1a;要保留的 [start, stop] 闭区间索引 支持负值&#xff…

fpga调试经验

fpga调试经验 调测场景&#xff1a; 外接adc传感器芯片&#xff0c;采集压力&#xff0c;温度等模拟量&#xff0c;fpga通过spi/i2c接口与adc传感器芯片通信 问题1&#xff1a;adc芯片在稳定环境中&#xff0c;输出数字量不稳定。 结论&#xff1a;adc输入电压由fpga板供应&…

cefSharp.WinForms.NETCore 138.xx (cef138/Chromium 138.0.7204.97) 升级测试体验

一、版本说明及变化 该版本支持cef138.0.x系列,cefsharp138.0.170 无重大更新;该版本暂不支持h264,请关注后续 关注栏目,关注我,学习cefsharp少走弯路 不迷路! CefSharp 设置缓存的注意事项参考 说明:栏目是订阅文章,无附件,如需要单独获取(看底部介绍说明) 该版本1…

chatgpt是怎么诞生的,详解GPT1到GPT4的演化之路及相关背景知识

人工智能革命正在发生&#xff0c;我们是何其幸运的一代&#xff0c;能亲眼见证人类/机器智能的大爆发。 仅仅作为这场革命的看客显然是有些遗憾的&#xff0c;如何进一步了解它&#xff1f; 本文将讨论chatgpt的诞生过程&#xff0c;串联起OpenAI发表的一系列重要论文&#…

[笔记] 动态 SQL 查询技术解析:构建灵活高效的企业级数据访问层

文章目录一. 应用场景二. 使用示例示例1示例2示例3三. 实现1. 动态表查询构建器&#xff0c;模仿MyBatis-Plus2. mapper3. mapper.xml功能概述参数说明四. 动态 SQL 的优化与风险防控在企业级应用开发中&#xff0c;数据查询场景往往呈现出复杂多变的特点 —— 从简单的单表筛选…

.net天擎分钟降水数据统计

1.需求&#xff1a;计算滑动时间下的1小时、3小时、6小时、12小时、24小时降水数据&#xff0c;统计这个时间下的分钟级降水数据2.分析第一版本&#xff1a;降水分钟级数据保存时间不长&#xff0c;保存太多意义不大&#xff0c;以更新的形式来保存这些统计数据效果会比较好&am…

图片合并pdf

文章目录 背景目标实现下载 背景 整合&#xff1a; 将零散的图片集合成一个单一文件。有序化&#xff1a; 固定图片的排列顺序。标准化&#xff1a; 转换为通用、兼容性强的PDF格式。高效管理&#xff1a; 便于存储、查找、分享和传输。正式化/文档化&#xff1a; 满足提交、报…

【vue3+js】文件下载方法整理

前端文件下载方式 引言 在前端开发中,文件下载是一个常见的需求。后端可能以不同的方式返回文件数据,前端需要根据不同的返回类型采用相应的处理方式。本文将总结几种常见的后端返回类型及对应的前端处理方案,主要基于Vue3和JavaScript环境。 一、后端返回文件URL 场景描…

MicrobiomeStatPlots | 森林图教程Forest plot tutorial

视频讲解https://www.bilibili.com/video/BV1mA3yzEEnc/森林图简介什么是森林图&#xff1f;参考&#xff1a;https://mp.weixin.qq.com/s/vwNf_sFlmhp7DeSYaQ3NxQ森林图是以统计指标和统计分析方法为基础&#xff0c;用数值运算结果绘制出的图形。它在平面直角坐标系中&#x…

vscode 打开项目时候,有部分外部依赖包找不到定义或者声明,但是能使用cmake正常编译并且运行

解决&#xff1a;是依赖路径的问题&#xff0c;先看includePath对不对&#xff0c;但是有时候会依赖外部文件&#xff0c;这时候入股cmake编译能够听过&#xff0c; 说明编译器能够找到依赖路径&#xff0c; 但是vscode的 IntelliSense 找不到依赖路径 → 导致编辑器提示错误、…

nginx:SSL_CTX_use_PrivateKey failed

SSL_CTX_use_PrivateKey("/home/nginx-vue/cret/*.com.key") failed (SSL: error:0B080074:x509 certificate routines:x509_check_private_key:key values mismatch) Nginx 尝试加载私钥文件时失败&#xff0c;原因是&#xff1a;证书与私钥不匹配 问题本质 SSL 证…

Docker 基于 Cgroups 实现资源限制详解【实战+源码】

本文将带你深入理解 Docker 如何借助 Linux Cgroups 实现对内存、CPU 等系统资源的精细化控制&#xff0c;并提供完整演示与图解、Compose 配置模板和资源包下载&#xff0c;适合初学者与工程师深入学习与实战。 文章目录 一、什么是 Cgroups&#xff1f;为什么对容器如此关键…

Linux中的系统日志(Rsyslog)

一、实验环境主机名系统网络适配器IP地址serverarhel9NAT模式172.25.254.11/24serverbrhel9NAT模式172.25.254.22/24二、Rsyslog的基本参数&#xff08;1&#xff09;安装rsyslog&#xff08;2&#xff09;rsyslog的服务名称&#xff08;3&#xff09;rsyslog的主配置文件rsysl…

Spring Boot + Thymeleaf + RESTful API 前后端整合完整示例

关键词&#xff1a;Spring Boot、Thymeleaf、RESTful API、前后端整合、用户管理 ✅ 功能概述 本文将为你提供一个完整的 Spring Boot Thymeleaf RESTful API 的前后端整合项目&#xff0c;实现以下功能&#xff1a; 模块功能用户管理查看用户列表、新增用户、删除用户后端…

从零开始的MySQL学习

MySQL 从零开始的MySQL学习 第一节 数据库 重点&#xff1a;数据库通过SQL等标准语言进行动作&#xff0c;数据库的概念、分类&#xff0c;数据管理系统&#xff08;操纵和管理数据库的大型软件&#xff09; 数据库&#xff08;Database&#xff09; 是按照数据结构来组织、存储…