SQL语句高级查询(适用于新手)

SQL查询语句的下载脚本链接!!!
【免费】SQL练习资源-具体练习操作可以查看我发布的文章资源-CSDN文库
https://download.csdn.net/download/Z0412_J0103/89908378
本文旨在为那些编程基础相对薄弱的朋友们提供一份详尽的指南,特别聚焦于在IDEA(IntelliJ IDEA)、MySQL以及Navicat等广受欢迎的开发与数据库管理工具中执行SQL语句的实践操作。无论你是编程初学者,还是希望在数据库操作上有所提升的开发者,本文将是你不可或缺的学习资源。我们的演示将以IDEA为核心平台,但所提供的知识和技巧同样适用于MySQL命令行、Navicat等其他环境,确保你的学习之路宽广且实用。
在探索数据库的奥秘时,能够亲手编写并执行SQL语句,无疑是将理论知识转化为实践能力的关键一步。IDEA,作为Java开发者的首选IDE(集成开发环境),不仅以其强大的代码智能提示、重构功能著称,还集成了对数据库管理的支持,使得从编写代码到数据库操作的无缝衔接成为可能。而MySQL,作为世界上最流行的开源关系型数据库管理系统之一,其广泛的应用场景和丰富的功能特性,为学习者和专业人士提供了广阔的实践空间。Navicat,则以其直观的用户界面和高效的数据管理能力,成为了连接数据库、执行复杂查询、管理数据库对象的得力助手。
本篇文章将通过一系列精心设计的示例,从零开始,逐步引导你掌握在IDEA中连接MySQL数据库、编写SQL查询语句、执行数据操作(如插入、更新、删除)以及使用Navicat进行数据库管理和优化的全过程。我们不仅关注技术的正确性,更重视步骤的清晰性和易理解性,确保每一步操作都有详尽的解释和截图说明,即便是初次接触这些工具的朋友也能轻松上手。
目录
1 使用SELECT查询计算结果
2 使用SELECT查询当前时间
3 提前: 切换到指定的库
4 查询表中数据 *表示整张表所有的字段
5 查询表中数据 将查询的所有字段显示出来 整理SQL结构
6 查询employees表中的部分字段,但是字段显示顺序为first_name、last_name、email
7 查询employees表中的部分字段,但是字段显示顺序为email、last_name、first_name
8 查询员工id是110的员工部分信息
9 查询50部门的员工(部门编号为50)
10 查询不在50部门的员工(部门编号不为50)
10 查询工资小于 3000的员工
11 查询工资是 [8000, 9000]范围的员工(薪资大于等于8000 薪资小于等于9000)
12 查询工资是 (8000, 9000)范围的员工
13 查询主管id是100、120、122的员工
14 没有主管的人(manager_id 是null值)
15 查询工资<3000,或者工资>15000
16 排除部门50,80,100,60
17 有提成的员工,commission_pct不是null
18 查询first_name中包含'en'的员工信息(不知道en前有什么,后有什么)
19 first_name第三个和第四个字符是'en'
20 排除电话中包含'44'
21 所有的部门id(要求部分id不重复显示),并且不显示null
22 所有部门中,有哪些工作岗位(查询员工表中有哪些部门和职位)
1 使用SELECT查询计算结果
方法一:
SELECT 1 + 2;
展示结果:

方法二:
SELECT 2 * 5;
展示结果:

方法三:
SELECT 7 / 2;
展示结果:

方法四:
SELECT 7 DIV 2;
展示结果:

2 使用SELECT查询当前时间
SELECT NOW();
展示结果:

3 提前: 切换到指定的库
USE hr;
展示结果:

4 查询表中数据 *表示整张表所有的字段
SELECT *
FROM employees;
展示结果:

5 查询表中数据 将查询的所有字段显示出来 整理SQL结构
快捷键:CTRL+ALT+L
表示的是自动规范化,当然你先要退出QQ,因为该快捷键也是QQ的自动锁定
SELECT employee_id,
first_name,
last_name,
email,
phone_number,
hire_date,
job_id,
salary,
commission_pct,
manager_id,
department_id
FROM employees;
展示结果:

6 查询employees表中的部分字段,但是字段显示顺序为first_name、last_name、email
SELECT first_name, last_name, email
FROM employees;
展示结果:

7 查询employees表中的部分字段,但是字段显示顺序为email、last_name、first_name
SELECT email, last_name, first_name
FROM employees;
展示结果:

8 查询员工id是110的员工部分信息
SELECT employee_id, first_name, salary
FROM employees
WHERE employee_id = 110;
展示结果:

9 查询50部门的员工(部门编号为50)
SELECT employee_id, first_name, salary, department_id
FROM employees
WHERE department_id = 50;
展示结果:

10 查询不在50部门的员工(部门编号不为50)
以下是两种查询方法,使用不等于的符号分别为“<>”、“!=”都表示同一意思。
SELECT employee_id, first_name, salary, department_id
FROM employees
WHERE department_id <> 50;
SELECT employee_id, first_name, salary, department_id
FROM employees
WHERE department_id != 50;
展示结果:

10 查询工资小于 3000的员工
SELECT employee_id, first_name, salary, department_id
FROM employees
WHERE salary < 3000;
展示结果:

11 查询工资是 [8000, 9000]范围的员工(薪资大于等于8000 薪资小于等于9000)
SELECT employee_id, first_name, salary
FROM employees
WHERE salary >= 8000
AND salary <= 9000;
SELECT employee_id, first_name, salary
FROM employees
WHERE salary >= 8000 && salary <= 9000;
BETWEEN x AND y 表示在x和y之间,一定要保证y>x,否则结果会为空,并且只适用于包含边界值的情况。
SELECT employee_id, first_name, salary
FROM employees
WHERE salary BETWEEN 8000 AND 9000;
展示结果:

12 查询工资是 (8000, 9000)范围的员工
SELECT employee_id, first_name, salary
FROM employees
WHERE salary > 8000
AND salary < 9000;
展示结果:

13 查询主管id是100、120、122的员工
SELECT employee_id, first_name, manager_id
FROM employees
WHERE manager_id = 100
OR manager_id = 120
OR manager_id = 122;
SELECT employee_id, first_name, manager_id
FROM employees
WHERE manager_id = 100
|| manager_id = 120
|| manager_id = 122;
#如果向IN提供了大量值,可能会影响效率
SELECT employee_id, first_name, manager_id
FROM employees
WHERE manager_id IN (100, 120, 122);
展示结果:

14 没有主管的人(manager_id 是null值)
#mysql的底层中,null和任何值比较都是null,不能和=链接,必须使用IS NULL
SELECT employee_id, first_name, manager_id
FROM employees
WHERE manager_id IS NULL;
展示结果:

15 查询工资<3000,或者工资>15000
SELECT employee_id, first_name, salary
FROM employees
WHERE salary < 3000
OR salary > 15000;
#查询薪资不在[3000,15000]范围内的薪资
SELECT employee_id, first_name, salary
FROM employees
WHERE salary NOT BETWEEN 3000 AND 15000;
展示结果:

16 排除部门50,80,100,60
SELECT employee_id, first_name, department_id
FROM employees
WHERE department_id NOT IN (50, 80, 100, 60);
展示结果:

17 有提成的员工,commission_pct不是null
# 绝对不可以NOT IS NULL
SELECT employee_id, first_name, salary, commission_pct
FROM employees
WHERE commission_pct IS NOT NULL;
展示结果:

18 查询first_name中包含'en'的员工信息(不知道en前有什么,后有什么)
SELECT employee_id, first_name
FROM employees
WHERE first_name LIKE '%en%';
展示结果:

19 first_name第三个和第四个字符是'en'
SELECT employee_id, first_name
FROM employees
WHERE first_name LIKE '__en%';
展示结果:

20 排除电话中包含'44'
SELECT employee_id, first_name, phone_number
FROM employees
WHERE phone_number NOT LIKE '%44%';
展示结果:

21 所有的部门id(要求部分id不重复显示),并且不显示null
SELECT DISTINCT department_id
FROM employees
WHERE department_id IS NOT NULL;
展示结果:

22 所有部门中,有哪些工作岗位(查询员工表中有哪些部门和职位)
SELECT DISTINCT department_id, job_id
FROM employees
WHERE department_id IS NOT NULL;
展示结果:

上一篇文章:SQL基础练习-CSDN博客
https://blog.csdn.net/Z0412_J0103/article/details/143105982下一篇文章:SQL高级查询02-CSDN博客
https://blog.csdn.net/Z0412_J0103/article/details/143173858
相关文章:
SQL语句高级查询(适用于新手)
SQL查询语句的下载脚本链接!!! 【免费】SQL练习资源-具体练习操作可以查看我发布的文章资源-CSDN文库https://download.csdn.net/download/Z0412_J0103/89908378 本文旨在为那些编程基础相对薄弱的朋友们提供一份详尽的指南,特别聚…...
main.ts中引入App.vue报错,提示“Cannot find module ‘./App.vue’ or its corresponding type
原因 代码编辑器:vscode ,使用vue3,所以安装了 Volar 插件,可以使 vue 代码高亮显示,不同颜色区分代码块,以及语法错误提示等 提示:如果使用的是vue2,则使用 Vetur 插件࿱…...
Android15音频进阶之组音量调试(九十)
简介: CSDN博客专家、《Android系统多媒体进阶实战》一书作者 新书发布:《Android系统多媒体进阶实战》🚀 优质专栏: Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏: 多媒体系统工程师系列【原创干货持续更新中……】🚀 优质视频课程:AAOS车载系统+…...
【Java】常用方法合集
以 DemoVo 为实体 import lombok.Data; import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;Data ExcelIgnoreUnannotated public class ExportPromoteUnitResult {private String id;ExcelProperty(value &qu…...
深入了解Vue Router:基本用法、重定向、动态路由与路由守卫的性能优化
文章目录 1. 引言2. Vue Router的基本用法2.1 基本配置 3. 重定向和命名路由的使用3.1 重定向3.2 命名路由 4. 在Vue Router中如何处理动态路由4.1 动态路由的概念4.2 如何处理动态路由4.3 动态路由的懒加载 5. 路由守卫的实现与性能影响5.1 什么是路由守卫?5.2 路由…...
深入理解InnoDB底层原理:从数据结构到逻辑架构
💡 无论你是刚刚踏入编程世界的新人,还是希望进一步提升自己的资深开发者,在这里都能找到适合你的内容。我们共同探讨技术难题,一起进步,携手度过互联网行业的每一个挑战。 📣 如果你觉得我的文章对你有帮助,请不要吝啬你的点赞👍分享💕和评论哦! 让我们一起打造…...
Linux介绍及操作命令
Linux 是一种开源的操作系统,具有以下特点和优势: 一、稳定性和可靠性 内核稳定 Linux 内核经过多年的发展和优化,具有高度的稳定性。它能够长时间运行而不出现崩溃或故障,适用于服务器和关键任务应用。内核的稳定性得益于其严格的开发流程和质量控制,以及全球开发者社区…...
JS | 详解图片懒加载的6种实现方案
一、什么是懒加载? 懒加载是一种对网页性能优化的方式,比如,当访问一个网页的时候,优先显示可视区域的图片而不是一次加载全部的图片,当需要显示时,再发送请求加载图片。 懒加载 :延迟加载&…...
Java | Leetcode Java题解之第502题IPO
题目: 题解: class Solution {public int findMaximizedCapital(int k, int w, int[] profits, int[] capital) {int n profits.length;int curr 0;int[][] arr new int[n][2];for (int i 0; i < n; i) {arr[i][0] capital[i];arr[i][1] profi…...
JavaWeb学习(3)
目录 一、9大内置对象 二、JavaBean 三、MVC三层架构 Model View Controller(Servlet) 四、Filter(过滤器) 应用一:处理中文乱码 应用二:登录验证 五、监听器 六、JDBC 一、9大内置对象 PageCont…...
【含开题报告+文档+PPT+源码】基于SpringBoot的百货商城管理系统的设计与实现
开题报告 随着互联网技术的快速发展和电子商务的兴起,网上购物已成为人们日常生活中不可或缺的一部分。传统的实体店面由于时间和空间的限制,无法满足消费者对于便捷、快速、个性化购物体验的需求。在此背景下,基于 Java 的网上商城系统应运…...
Elasticsearch 实战应用与优化策略研究
一、引言 1.1 研究背景 在当今大数据时代,数据量呈爆炸式增长,对数据的存储、检索和分析提出了更高的要求。Elasticsearch 作为一款强大的分布式搜索和分析引擎,在这个时代背景下显得尤为重要。 随着数据密集型应用场景的不断增加…...
植物大战僵尸杂交版游戏分享
植物大战僵尸杂交版游戏下载:夸克网盘分享 无捆绑之类的隐形消费,下载即玩...
ProteinMPNN中DecLayer类介绍
PositionWiseFeedForward 类的代码 class PositionWiseFeedForward(nn.Module):def __init__(self, num_hidden, num_ff):super(PositionWiseFeedForward, self).__init__()self.W_in = nn.Linear(num_hidden, num_ff, bias=True)self.W_out = nn.Linear(num_ff, num_hidden, …...
Flux.all 使用说明书
all public final Mono<Boolean> all(Predicate<? super T> predicate)Emit a single boolean true if all values of this sequence match the Predicate. 如果该序列中的所有值都匹配给定的谓词(Predicate),则发出一个布尔值…...
DORA 机器人中间件学习教程(6)——激光点云预处理
文章目录 1 移植思路2 代码输入输出说明3 编写CmakeList.txt文件4 编写yml文件5 编译并启动节点参考资料 在DORA中通过驱动获取激光雷达数据后,激光点云预处理部分代码是参考了autoware官方代码并对其进行裁剪得到的,点云预处理主要包含三个节点…...
搜维尔科技:TechViz将您的协同项目评审提升到一个全新的高度
TechViz将您的协同项目评审提升到一个全新的高度 搜维尔科技: TechViz将您的协同项目评审提升到一个全新的高度...
Dinky 字段模式演变 PIPELINE 同步MySQL到Doris
背景 用Dinky数据平台 FlinkCDC收集Mysql BinLog 至 Doris 搭建实时数仓 问题 用Dinky CDCSOURCE 字段模式演变 整库同步Mysql到Doris 字段新增删除不生效 组件信息 Flink 1.17 FlinkCDC 3.1 dinky 1.1 Doris 2.1.6 Mysql 8.0Dinky MySQLCDC 整库到 Doris需要的依赖 Flink/…...
【Docker】Harbor 私有仓库和管理
目录 一、搭建本地私有仓库 二、harbor简介(特性、构成、架构的数据流向) 2.1 什么是Harbor 2.2 Harbor的特性 2.3 Harbor的构成 2.4 Harbor的工作原理(运行流程) 三、harbor部署以及配置文件 1. 部署 Docker-Compose 服…...
《重置MobaXterm密码并连接Linux虚拟机的完整操作指南》
目录 引言 一、双击MobaXterm_Personal_24.2进入,但是忘记密码。 那么接下来请跟着我操作。 二、点击此链接,重设密码。 三、下载完成后,现在把这个exe文件解压。注意解压要与MobaXterm_Personal_24.2.exe在同一目录下哦,不然…...
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...
华为云AI开发平台ModelArts
华为云ModelArts:重塑AI开发流程的“智能引擎”与“创新加速器”! 在人工智能浪潮席卷全球的2025年,企业拥抱AI的意愿空前高涨,但技术门槛高、流程复杂、资源投入巨大的现实,却让许多创新构想止步于实验室。数据科学家…...
多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...
【OSG学习笔记】Day 18: 碰撞检测与物理交互
物理引擎(Physics Engine) 物理引擎 是一种通过计算机模拟物理规律(如力学、碰撞、重力、流体动力学等)的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互,广泛应用于 游戏开发、动画制作、虚…...
rknn优化教程(二)
文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK,开始写第二篇的内容了。这篇博客主要能写一下: 如何给一些三方库按照xmake方式进行封装,供调用如何按…...
现代密码学 | 椭圆曲线密码学—附py代码
Elliptic Curve Cryptography 椭圆曲线密码学(ECC)是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础,例如椭圆曲线数字签…...
Module Federation 和 Native Federation 的比较
前言 Module Federation 是 Webpack 5 引入的微前端架构方案,允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...
pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)
目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关࿰…...
CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)
漏洞概览 漏洞名称:Apache Flink REST API 任意文件读取漏洞CVE编号:CVE-2020-17519CVSS评分:7.5影响版本:Apache Flink 1.11.0、1.11.1、1.11.2修复版本:≥ 1.11.3 或 ≥ 1.12.0漏洞类型:路径遍历&#x…...
基于Springboot+Vue的办公管理系统
角色: 管理员、员工 技术: 后端: SpringBoot, Vue2, MySQL, Mybatis-Plus 前端: Vue2, Element-UI, Axios, Echarts, Vue-Router 核心功能: 该办公管理系统是一个综合性的企业内部管理平台,旨在提升企业运营效率和员工管理水…...
