MySQL的查询方法

单表查询
素材: 表名:worker-- 表中字段均为中文,比如 部门号 工资 职工号 参加工作

要求:

1、显示所有职工的基本信息。   
2、查询所有职工所属部门的部门号,不显示重复的部门号。  
3、求出所有职工的人数。  
4、列出最高工和最低工资。   
5、列出职工的平均工资和总工资。   
6、创建一个只有职工号、姓名和参加工作的新表,名为工作日期表。 
7、显示所有女职工的年龄。 
8、列出所有姓刘的职工的职工号、姓名和出生日期。
9、列出1960年以前出生的职工的姓名、参加工作日期。
10、列出工资在1000-2000之间的所有职工姓名。 
11、列出所有陈姓和李姓的职工姓名。
12、列出所有部门号为2和3的职工号、姓名、党员否。  
13、将职工表worker中的职工按出生的先后顺序排序。
14、显示工资最高的前3名职工的职工号和姓名。 
15、求出各部门党员的人数。 
16、统计各部门的工资和平均工资
17、列出总人数大于4的部门号和总人数。

1.建表

mysql> 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(11) NOT NULL,
    -> `性别` enum('男','女') DEFAULT '男' NOT NULL,
    -> PRIMARY KEY (`职工号`)
    -> ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;

 

 2.插入数据

INSERT INTO worker (部门号, 职工号, 工作时间, 工资, 政治面貌, 姓名,出生日期,年龄,性别)  VALUES (101, 1001, '2015-05-04', 3500.00, '群众', '张三',  '1990-7-1','33','男');

INSERT INTO worker (部门号, 职工号, 工作时间, 工资, 政治面貌, 姓名,出生日期,年龄,性别)  VALUES (101, 1002, '2017-2-6', 3200.00, '团员', '李四', '1997-2-8','26','男');

INSERT INTO worker (部门号, 职工号, 工作时间, 工资, 政治面貌, 姓名,出生日期,年龄,性别)  VALUES (102, 1003, '2011-1-4', 8500.00, '党员', '王亮','1983-6-8','40','女');

INSERT INTO worker (部门号, 职工号, 工作时间, 工资, 政治面貌, 姓名,出生日期,年龄,性别)  VALUES (102, 1004, '2016-10-10', 5500.00, '群众', '赵六','1994-9-5', '29','女');

INSERT INTO worker (部门号, 职工号, 工作时间, 工资, 政治面貌, 姓名,出生日期,年龄,性别)  VALUES (102, 1005, '2014-4-1', 4800.00, '党员', '钱七','1992-12-30','30','男');

INSERT INTO worker (部门号, 职工号, 工作时间, 工资, 政治面貌, 姓名,出生日期,年龄,性别)  VALUES (101, 1006, '2017-5-5', 4500.00, '党员', '孙八', '1996-9-2','27','男');

INSERT INTO worker (部门号, 职工号, 工作时间, 工资, 政治面貌, 姓名,出生日期,年龄,性别)  VALUES (102, 1007, '2017-5-5', 1500.00, '党员', '刘备', '1997-9-2','28','男');

INSERT INTO worker (部门号, 职工号, 工作时间, 工资, 政治面貌, 姓名,出生日期,年龄,性别)  VALUES (102, 1008, '2017-5-5', 1000.00, '党员', '关羽', '1986-9-2','37','男');

INSERT INTO worker (部门号, 职工号, 工作时间, 工资, 政治面貌, 姓名,出生日期,年龄,性别)  VALUES (101, 1009, '2017-5-5', 1800.00, '党员', '张飞', '1970-9-2','53','男');

INSERT INTO worker (部门号, 职工号, 工作时间, 工资, 政治面貌, 姓名,出生日期,年龄,性别)  VALUES (102, 1010, '2017-5-5', 2800.00, '党员', '陈飞', '1990-9-2','33','女');

 

 3.查表

1、显示所有职工的基本信息

mysql> select 部门号, 职工号, 工作时间, 工资, 政治面貌, 姓名,出生日期,年龄,性别 from worker;

 

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

mysql> select distinct 部门号 from worker;

 3、求出所有职工的人数。

mysql> select count(*) as total_employees from worker;

 

 4、列出最高工和最低工资。

mysql> select max(工资) as max_工资, min(工资) as min_工资 from worker;

 

 5、列出职工的平均工资和总工资。

mysql> select avg(工资) as avg_工资,sum(工资) as sum_工资 from worker;

 

6、创建一个只有职工号、姓名和参加工作的新表,名为工作日期表。

mysql> create table 工作日期表 (
    ->员工号 int not null,
    ->姓名 varchar(50) not null,
    ->参加工作日期 date not null
    -> );

 7、显示所有女职工的年龄。

 mysql> select 年龄  from worker where 性别='女';

 8、列出所有姓刘的职工的职工号、姓名和出生日期。

mysql> select 职工号,姓名, 出生日期 from worker where 姓名 like '刘%';

 9、列出1960年以前出生的职工的姓名、参加工作日期。

mysql> select 姓名,出生日期 from worker where 出生日期 <=1960-1-1;

没有1960年以前出生的职工!!!

10、列出工资在1000-2000之间的所有职工姓名。

mysql> select 姓名 from worker where 1000<= 工资 <=2000;

 11、列出所有陈姓和李姓的职工姓名。

mysql> select 姓名 from worker where 姓名 like '陈%' or 姓名 like '李%';

 12、列出所有部门号为2和3的职工号、姓名、党员否。

mysql> select 职工号,姓名,政治面貌 from worker where 部门号 in(101,102);

 13、将职工表worker中的职工按出生的先后顺序排序。

mysql> select *from worker where 出生日期 order by 出生日期;

 14、显示工资最高的前3名职工的职工号和姓名。

mysql> select 职工号,姓名,工资 from worker order by 工资 desc limit 3;

 15、求出各部门党员的人数。

mysql> select 部门号,count(*) as 党员人数 from worker where 政治面貌 = '党员' group by 部门号;

16、统计各部门的工资和平均工资

mysql> select 部门号,avg (工资) as 平均工资 from worker group by 部门号;

 17、列出总人数大于4的部门号和总人数。

mysql> select 部门号,count(*) as 总人数 from worker group by 部门号 having count(*) > 4;

 

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

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

相关文章

php后端实现调用高德地图进行POI搜索

对于当前位置或者选定省市位置进行查询 接口实现 /*** 查询地址* ApiTitle (查询地址)* ApiSummary (查询地址)* ApiMethod (POST)* ApiRoute (/api/demo/address)* ApiParams (name"dart", type"integer", requiredtrue, description"省…

TCP/IP四层模型对比OSI七层网络模型的区别是啥?数据传输过程原来是这样的

一、TCP/IP四层模型对比OSI七层模型 它们两个定义的一些功能和协议都是差不多的。TCP/IP四层协议模型比我们的七层少了三层&#xff0c;把我们的数据链路层和物理层放在一层里面了&#xff0c;叫做数据链路层&#xff08;网络接口层&#xff09;&#xff0c;对应网络协议也没有…

openGauss学习笔记-35 openGauss 高级数据管理-ALTER TABLE语句

文章目录 openGauss学习笔记-35 openGauss 高级数据管理-ALTER TABLE语句35.1 语法格式35.2 参数说明35.3 示例 openGauss学习笔记-35 openGauss 高级数据管理-ALTER TABLE语句 修改表&#xff0c;包括修改表的定义、重命名表、重命名表中指定的列、重命名表的约束、设置表的所…

基于应用值迭代的马尔可夫决策过程(MDP)的策略的机器人研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

如何在 Spring Boot 中集成日志框架 SLF4J、Log4j

文章目录 具体步骤附录 笔者的操作环境&#xff1a; Spring Cloud Alibaba&#xff1a;2022.0.0.0-RC2 Spring Cloud&#xff1a;2022.0.0 Spring Boot&#xff1a;3.0.2 Nacos 2.2.3 Maven 3.8.3 JDK 17.0.7 IntelliJ IDEA 2022.3.1 (Ultimate Edition) 具体步骤 因为 …

Three.js光源

目录 Three.js入门 Three.js光源 Three.js阴影 Three.js纹理贴图 本文我们将研究three.js中的灯光类型和JavaScript中的光源&#xff0c;探索不同的光源设置。我们的目标是全面理解光源设置和类型&#xff0c;比如环境光、半球光、矩形光、方向光、点光源和聚光灯。我们将…

智能安防监控:基于Java+SpringBoot实现人脸识别搜索

目录 引言背景介绍目的和重要性 人脸识别技术的基本原理图像采集和预处理特征提取与表示人脸匹配算法 人脸识别搜索的应用领域公告安全和监控社交网络和照片管理 参考实现步骤数据收集与预处理人脸特征提取查询处理 引言 背景介绍 结合人脸识别技术&#xff0c;在工厂、学校、…

Java后台生成ECharts图片

前言 通过echarts的jar包&#xff0c;Java后台生成一张图片&#xff0c;并把图片插入到word中。关于word插图片的代码在下一章。 需要用到的工具PhantomJS,Echarts-convert.js,jquery.js,echarts.js。 1.PhantomJS 介绍 PhantomJS是一个不需要浏览器的富客户端。 官方介绍&…

gitlab-Runner搭建

root wget https://packages.gitlab.com/runner/gitlab-runner/packages/fedora/29/gitlab-runner-12.6.0-1.x86_64.rpm/download.rpm rpm -ivh download.rpm ---- 安装 rpm -Uvh download.rpm -----更新升级 然后运行&#xff1a; gitlab-runner register --url https://git…

泊松损坏图像的快速尺度间小波去噪研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

Rocky Linux更换为国内源

Rocky Linux提供的可供切换的源列表&#xff1a;Mirrors - Mirror Manager 其中以 COUNTRY 列为 CN 的是国内源。 选择其中一个Rocky Linux 源使用帮助 — USTC Mirror Help 文档 操作前请做好备份 对于 Rocky Linux 8&#xff0c;使用以下命令替换默认的配置 sed -e s|^mirr…

实现静态资源访问的几种方法

什么是静态资源&#xff1f; 静态资源是指在服务器端存储的不会变化的文件&#xff0c;如HTML、CSS、JavaScript、图片、音频、视频等文件。这些文件一般不包含动态内容&#xff0c;每次请求时返回的内容都是固定的。 为什么要使用静态资源&#xff1f; 提升网站性能&#xf…

Docker学习(二十四)报错速查手册

目录 一、This error may indicate that the docker daemon is not running 报错docker login 报错截图&#xff1a;原因分析&#xff1a;解决方案&#xff1a; 二、Get "https://harbor.xxx.cn/v2/": EOF 报错docker login 报错截图&#xff1a;原因分析&#xff1a…

谷歌推出AI模型机器人RT2 将文本和图像输出为机器人动作

去年年底&#xff0c;ChatGPT火遍全球&#xff0c;全世界都见识了大语言模型的强大力量。人们对大模型不再陌生&#xff0c;开始使用基于大模型的应用绘画、作图、搜索资料、设计剧情等&#xff0c;而妙用不止于此。谷歌推出了Robotics Transformer 2(RT2)&#xff0c;这是一个…

Python中enumerate用法详解

目录 1.简介 2.语法 3.参数 4.返回值 5.详解 6.实例 7.补充 1.简介 enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列&#xff0c;同时列出数据和数据下标&#xff0c;一般用在 for 循环当中。 2.语法 以下是 enumerate() 方法的语…

Sencha Ext.NET Crack 快速应用程序的正确工具集

Sencha Ext.NET Crack 快速应用程序的正确工具集 Sencha Ext.NET是一个高级的ASP.NET核心组件框架&#xff0c;它包含了强大的跨浏览器Sencha Ext JS库。通过140多个预构建和专业测试的UI组件实现企业级性能和生产效率。Sencha Ext.NET使用尖端的Web技术创建功能强大的Web应用程…

Transformer理论学习

Transformer出自于论文《attention is all you need》。 一些主流的序列模型主要依赖于复杂的循环结构或者CNN&#xff0c;这里面包含了编解码器等。而Transformer主要的结构是基于注意力机制&#xff0c;而且是用多头注意力机制去替换网络中的循环或者CNN(换言之就是transfor…

可靠传输-选择重传协议SR

一个数据分组的误码就会导致其后续多个数据分组不能被接收方按序接收而丢弃 (尽管它们无乱序和误码)。这必然会造成发送方对这些数据分组的超时重传&#xff0c;显然这是对通信资源的极大费。 为了进一步提高性能&#xff0c;可设法只重传出现误码的数据分组。因此&#xff0c;…

Python基础--序列操作/函数

Python基础 1.序列的操作 2.函数 1. 数据类型的具体操作 1.1 序列操作--列表具体操作&#xff1a; #定义列表 listA [] #定义一个空列表 listB [1,2.8,"你好",listA,[1,2,3]] # 访问列表 print(listB)#查看整个列表 print(listB[2])#查看单个…