Mysql数据库之单表查询
目录
一、练习时先导入数据如下:
二、查询验证导入是否成功
三、单表查询
四、where和having的区别
一、练习时先导入数据如下:
素材: 表名:worker-- 表中字段均为中文,比如 部门号 工资 职工号 参加工作 等
CREATE TABLE `worker` (`部门号` int(11) NOT NULL,`职工号` int(11) NOT NULL,`工作时间` date NOT NULL,`工资` float(8,2) NOT NULL,`政治面貌` varchar(10) NOT NULL DEFAULT '群众',`姓名` varchar(20) NOT NULL,`出生日期` date NOT NULL,`年龄` int,PRIMARY KEY (`职工号`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;INSERT INTO `worker` (`部门号`, `职工号`, `工作时间`, `工资`, `政治面貌`, `姓名`, `出生日期`)
VALUES (101, 1001, '2015-5-4', 3500.00, '群众', '张三', '1990-7-1',11),(101, 1002, '2017-2-6', 3200.00, '团员', '李四', '1997-2-8',22),(102, 1003, '2011-1-4', 8500.00, '党员', '王亮', '1983-6-8',33),(102, 1004, '2016-10-10', 5500.00, '群众', '赵六', '1994-9-5',44),(102, 1005, '2014-4-1', 4800.00, '党员', '钱七', '1992-12-30',55),(102, 1006, '2017-5-5', 4500.00, '党员', '孙八', '1996-9-2',66);UPDATE `worker`
SET `年龄` = YEAR(CURDATE()) - YEAR(`出生日期`) - (DATE_FORMAT(CURDATE(), '%m%d') < DATE_FORMAT(`出生日期`, '%m%d'));
二、查询验证导入是否成功

三、单表查询
1、显示所有职工的基本信息。
select *from worker;

2、查询所有职工所属部门的部门号,不显示重复的部门号。
select distinct 部门号 from worker;

3、求出所有职工的人数。
select count(*) AS 职工人数 from worker;

4、列出最高工和最低工资。
SELECT MAX(工资) AS 最高工资, MIN(工资) AS 最低工资 FROM worker;

5、列出职工的平均工资和总工资。
SELECT AVG(工资) AS 平均工资, SUM(工资) AS 总工资 FROM worker;

6、创建一个只有职工号、姓名和参加工作的新表,名为工作日期表。
CREATE TABLE 工作日期表 AS
SELECT 职工号, 姓名, 工作时间 FROM worker;

7、显示所有女职工的年龄。 (这里博主忘记增加年龄段,底下是正确的命令)
select 年龄 from worker where 性别 = '女';
8、列出所有姓刘的职工的职工号、姓名和出生日期。
SELECT 职工号, 姓名, 出生日期 FROM worker WHERE 姓名 LIKE '刘%';

9、列出1960年以前出生的职工的姓名、参加工作日期。
SELECT 姓名, 工作时间 FROM worker WHERE 出生日期 < '1960-01-01';

10、列出工资在1000-2000之间的所有职工姓名。
select 姓名 from worker where 工资 between 1000 and 2000;

11、列出所有陈姓和李姓的职工姓名。
SELECT 姓名 FROM worker WHERE 姓名 LIKE '陈%' OR 姓名 LIKE '李%';

12、列出所有部门号为2和3的职工号、姓名、党员否。
SELECT 职工号, 姓名, 政治面貌 FROM worker WHERE 部门号 IN (2, 3);
13、将职工表worker中的职工按出生的先后顺序排序。
select *from worker order by 出生日期;

14、显示工资最高的前3名职工的职工号和姓名。
select 职工号,姓名 from worker order by 工资 desc limit 3;

15、求出各部门党员的人数。
SELECT 部门号, COUNT(*) AS 党员人数 FROM worker WHERE 政治面貌 = '党员' GROUP BY 部门号;
16、统计各部门的工资和平均工资
select 部门号,sum(工资) AS 总工资, AVG(工资) AS 平均工资 from worker group by 部门号;

17、列出总人数大于4的部门号和总人数。
SELECT 部门号, COUNT(*) AS 总人数 FROM worker GROUP BY 部门号 HAVING 总人数 > 4;

四、where和having的区别
-
WHERE子句:WHERE子句用于在执行SELECT查询时,对表中的行进行筛选。它作用于从表中选取的数据行,在数据从表中读取到内存之前进行筛选。这意味着WHERE子句可以根据条件过滤掉不符合要求的行,只有符合条件的行会被取回到查询结果中。 -
HAVING子句:HAVING子句用于在执行聚合函数(如SUM、COUNT、AVG等)后对结果进行筛选。它作用于聚合结果集,允许你筛选聚合后的数据,类似于对聚合结果进行二次筛选。HAVING子句通常与GROUP BY子句一起使用,因为聚合函数在分组后才有意义。
总结:
WHERE子句用于在数据选取之前筛选数据行,它作用于从表中选取的原始数据。HAVING子句用于在聚合函数计算之后筛选结果集,它作用于聚合后的数据。
相关文章:
Mysql数据库之单表查询
目录 一、练习时先导入数据如下: 二、查询验证导入是否成功 三、单表查询 四、where和having的区别 一、练习时先导入数据如下: 素材: 表名:worker-- 表中字段均为中文,比如 部门号 工资 职工号 参加工作 等 CRE…...
macos搭建appium-iOS自动化测试环境
目录 准备工作 安装必需的软件 安装appium 安装XCode 下载WDA工程 配置WDA工程 搭建appiumwda自动化环境 第一步:启动通过xcodebuild命令启动wda服务 分享一下如何在mac电脑上搭建一个完整的appium自动化测试环境 准备工作 前期需要准备的设备和账号&…...
日常工具 之 一些 / 方便好用 / 免费 / 在线 / 工具整理
日常工具 之 一些 / 方便好用 / 免费 / 在线 / 工具整理 目录 日常工具 之 一些 / 方便好用 / 免费 / 在线 / 工具整理 1、在线Json ,可以在线进行json 格式验证,解析转义等操作 2、Gif动图分解,在线把 gif 图分解成一张张单图 3、在线P…...
AWS 中文入门开发教学 50- S3 - 网关终端节点 - 私有网络访问S3的捷径
知识点 通过设置网关终端节点,使私有网段中的EC2也可以访问到S3服务官网 https://docs.aws.amazon.com/zh_cn/codeartifact/latest/ug/create-s3-gateway-endpoint.html 实战演习 通过网关访问S3 看图说话"> 实战步骤 创建一个可以访问S3的角色 KomaRoleS3FullAcc…...
windows使用/服务(13)戴尔电脑怎么设置通电自动开机
戴尔pc机器通电自启动 1、将主机显示器键盘鼠标连接好后,按主机电源键开机 2、在开机过程中按键盘"F12",进入如下界面,选择“BIOS SETUP” 3、选择“Power Management” 4、选择“AC Recovery”,点选“Power On”,点击“…...
Leetcode每日一题:1289. 下降路径最小和 II(2023.8.10 C++)
目录 1289. 下降路径最小和 II 题目描述: 实现代码与解析: 动态规划 原理思路: 1289. 下降路径最小和 II 题目描述: 给你一个 n x n 整数矩阵 grid ,请你返回 非零偏移下降路径 数字和的最小值。 非零偏移下降路…...
Node.js |(一)Node.js简介及计算机基础 | 尚硅谷2023版Node.js零基础视频教程
学习视频:尚硅谷2023版Node.js零基础视频教程,nodejs新手到高手 文章目录 📚关于Node.js🐇为什么要学Node.js🐇Node.js是什么🐇Node.js的作用🐇Node.js下载安装🐇命令行工具…...
Canal+Kafka实现Mysql数据同步
Canal介绍 canal [kənl],译意为水道/管道/沟渠,主要用途是基于 MySQL 数据库增量日志解析,提供增量数据订阅和消费 canal可以用来监控数据库数据的变化,从而获得新增数据,或者修改的数据。 canal是应阿里巴巴存在杭…...
K8s部署
K8s部署 一、实验架构 二进制搭建 Kubernetes v1.20 -单master节点部署k8s集群master01:192.168.111.10 kube-apiserver kube-controller-manager kube-scheduler etcd k8s集群master02:192.168.111.20k8s集群node01:192.168.111.20 kubele…...
MongoDB 分片集群
在了解分片集群之前,务必要先了解复制集技术! 1.1 MongoDB复制集简介 一组Mongodb复制集,就是一组mongod进程,这些进程维护同一个数据集合。复制集提供了数据冗余和高等级的可靠性,这是生产部署的基础。 1.1.1 复制集…...
CSDN 编程竞赛六十九期题解
竞赛总览 CSDN 编程竞赛六十九期:比赛详情 (csdn.net) 竞赛题解 题目1、S数 如果一个正整数自身是回文数,而且它也是一个回文数的平方,那么我们称这个数为S数。现在,给定两个正整数L、R,返回包含在范围 [L, R] 中S…...
vue3组合式api单文件组件写法
一,模板部分 <template><div class"device container"><breadcrumb :list"[首页, 应急处置]" /><div class"search_box"><div class"left"><span style"margin-right: 15px"…...
Unity游戏源码分享-多角色fps射击游戏
Unity游戏源码分享-多角色fps射击游戏 项目地址:https://download.csdn.net/download/Highning0007/88204023...
在Cesium中给管道添加水流效果
添加效果前后对比: 关键代码: /*** 水流粒子,目前支持向上或者向下的效果* param {Number} x* param {Number} y* param {Number} z* param {Number} options* example* options {* color: Cesium.Color.AZURE,* emissionRate: 5, …...
测试平台——项目模块模型类设计
这里写目录标题 一、项目应用1、项目包含接口:2、创建子应用3、项目模块设计a、模型类设计b、序列化器类设计c、视图类设计d、项目的增删改查操作4、接口模块设计a、模型类设计b、序列化器类设计c、视图类设计d、接口的增删改查查操作5、环境模块设计a、模型类设计b、序列化器…...
【Android】MVC,MVP,MVVM三种架构模式的区别
MVC 传统的代码架构模式,仅仅是对代码进行了分层,其中的C代表Controller,控制的意思 将代码划分为数据层,视图层,控制层,三层之间可以任意交互 MVP MVP是在MVC基础上改进而来的一种架构,其中的…...
代码质量检查工具SonarQube
Devops流水线之SonarQube 文章目录 Devops流水线之SonarQube1. 软件功能介绍及用途2. 软件环境搭建与使用2.1 使用方法2.2 SonarQube相关属性说明2.3 Sonar配置文件内容说明 3. 使用环节4. 检查方法 1. 软件功能介绍及用途 SonarQube是一个用于代码质量管理的开源平台…...
开发命名规范
1项目命名规范 1、工程项目名,尽量想一些有意义、有传播价值的名称;比如星球、游戏、名人、名地名等;取名就跟给孩子取名一样,独特、有价值、有意义、好传播 2、所有的类都必须添加创建者和创建日期 3、所有代码:包括…...
12. Redis分布式高可用集群搭建
文章目录 Redis分布式高可用集群搭建一、redis集群有三种方式:1. 主从模式2. 哨兵3. 集群(master-cluster) 二、基于centos7操作系统操做1. 关闭防火墙,三台机器都执行2. hostname修改,三台机器都执行,这一步是为了在内…...
【微信小程序篇】-请求封装
最近自己在尝试使用AIGC写一个小程序,页面、样式、包括交互函数AIGC都能够帮我完成(不过这里有一点问题AIGC的上下文关联性还是有限制,会经常出现对于需求理解跑偏情况,需要不断的重复强调,并纠正错误,才能得到你想要的…...
ESP32驱动A7608SA-H LTE Cat.1模组全栈固件库
1. 项目概述Modem-a7608sa-library是一个专为 ESP32 平台深度优化的开源固件库,面向 SIMCom A7608SA-H LTE Cat.1 模组提供全栈式驱动支持。该模组采用 LCC 封装,集成 LTE-FDD 频段(B1/B3/B5/B8/B20/B28)、GSM/GPRS(90…...
mutt-wizard疑难排解终极指南:常见错误与解决方案完全清单
mutt-wizard疑难排解终极指南:常见错误与解决方案完全清单 【免费下载链接】mutt-wizard A system for automatically configuring mutt and isync with a simple interface and safe passwords 项目地址: https://gitcode.com/gh_mirrors/mu/mutt-wizard mu…...
OpenClaw+SecGPT-14B成本对比:自建模型比SaaS省下80%费用
OpenClawSecGPT-14B成本对比:自建模型比SaaS省下80%费用 1. 为什么我要做这个成本对比实验 去年我开始使用OpenClaw自动化处理日常安全扫描任务时,发现一个令人头疼的问题:每次调用商业安全API的费用高得惊人。作为一个独立安全研究员&…...
程序员副业图谱
引言:程序员副业的现状与趋势程序员副业需求增长的背景(技术变现、职业发展多元化)CSDN作为技术社区在副业生态中的角色CSDN程序员副业图谱的核心模块技术内容创作博客/专栏写作:技术干货、实战经验、行业分析视频教程:…...
PHP 8.9错误处理增强配置:从php.ini到Runtime::setErrorHandler()的7层防御链构建实战
第一章:PHP 8.9错误处理增强配置的演进背景与核心理念PHP 8.9(开发代号“Sentinel”)并非官方已发布的稳定版本,而是社区为探讨下一代错误处理范式所提出的概念性演进提案。其核心目标是弥合传统错误抑制()…...
嵌入式轻量HTTP客户端设计与物联网数据上报实践
1. 项目概述 HTTPClient-Xively 是一个面向嵌入式平台的轻量级 HTTP 客户端实现,专为 mbed OS 网络栈设计,核心目标是与 Xively 平台(现已被 Google Cloud IoT Core 收购并逐步停用,但其 REST API 设计范式仍具典型工程参考价值&a…...
DotNetPy:现代.NET 与 Python 互操作 实战指南胀
我为什么会发出这个疑问呢?是因为我研究Web开发中的一个问题时,HTTP请求体在 Filter(过滤器)处被读取了之后,在 Controller(控制层)就读不到值了,使用 RequestBody 的时候。 无论是…...
GCViewer扩展开发终极指南:自定义数据读取器与导出格式的完整教程
GCViewer扩展开发终极指南:自定义数据读取器与导出格式的完整教程 【免费下载链接】GCViewer Fork of tagtraum industries GCViewer. Tagtraum stopped development in 2008, I aim to improve support for Suns / Oracles java 1.6 garbage collector logs (inclu…...
QY-02-YS 雨量水位监测站 雨水情测报助手
雨量监测站配置1)不锈钢支架,高度为1.2米2)雨量传感器、水位传感器3)太阳能供电:太阳能电池板,蓄电池4)数据采集发送器数据传输采用4G和短信息兼容方式;具备向三个(或以上…...
永动虾:OpenClaw一键部署,AI智能体轻松上手,解放你的数字双手
2025年底爆火的OpenClaw(龙虾AI),凭借给大模型装上“数字手脚”、自主操控设备完成任务的强大能力,成为AI智能体领域的现象级开源项目。但原版OpenClaw复杂的部署流程、繁琐的环境配置,让不少普通用户望而却步。永动虾…...
