单表查询 -- MySQL(3)

目录

题目:

创建表:

问题(17个):

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


题目:

表名: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,

PRIMARY KEY(`职工号`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;

INSERT INTO `worker`(`部门号`,`职工号`,`工作时间`,`工资`,`政治面貌`,`姓名`,`出生日期`) VALUES (101,1001,'2015-5-4',3500.00,'群众','张三','1990-7-1');

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

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

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

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

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


创建表:

1)创建并进入作业数据库

2)创建worker表

3)向表中添加职工信息


问题(17个):
1、显示所有职工的基本信息。  

注: mysql> select * from worker;

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

注: mysql> select distinct 部门号 from worker;

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

注:mysql> select count(姓名) from worker;

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

注:mysql> select max(工资) 最高工资,min(工资) 最低工资 from worker;

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

注:mysql> select avg(工资) 平均工资,sum(工资) 总工资 from worker;

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

方法一: 

注:mysql> create table `工作日期表`(
    -> `职工号` int(11) NOT NULL,
    -> `姓名` varchar(20) NOT NULL,
    -> `参加工作` varchar(20) NOT NULL
    -> );

方法二:从worker表复制过来内容

注:mysql> create table 工作日期表2 select 职工号,姓名,工作时间 from worker;

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

注:mysql> select 姓名,2023-year(出生日期) 年龄 from worker;

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

注:mysql> select 职工号,姓名,出生日期 from worker where 姓名 regexp "^张";

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

 注:mysql> select 姓名,工作时间 from worker where 出生日期 < 19900101;

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

注:mysql> select 姓名 from worker where 工资 between 3000 and 4000;

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

注:mysql> select 姓名 from worker where 姓名 regexp "^李" or 姓名 like "赵%";

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

注:mysql> select 部门号,group_concat(职工号),group_concat(姓名),group_concat(政治面貌) from worker group by 部门号;

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

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

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

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

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

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

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

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

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

注:mysql> select 部门号,count(姓名) from worker group by 部门号 having count(部门号) > 3;

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

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

相关文章

数据恢复轻松搞定:如何处理.adver的数据勒索

引言&#xff1a; 勒索病毒日益猖獗&#xff0c;.adver 勒索病毒作为新兴威胁之一&#xff0c;给用户的数据安全带来了不小的挑战。本文将深入介绍.adver勒索病毒的特点、被加密数据的恢复方法&#xff0c;以及全面的预防措施&#xff0c;帮助您更好地了解并应对这一数字威胁。…

什么是内网穿透?

简介&#xff1a; 书面来说&#xff1a;内网穿透是一种网络技术&#xff0c;用于将内部私有网络中的服务暴露给公共网络&#xff0c;使得外部网络可以通过公网访问内网的服务。通常情况下&#xff0c;内网中的设备和服务由于位于私有网络中&#xff0c;无法直接通过公网IP进行…

群发邮件效果追踪:掌握数据,优化营销策略

我们在邮件群发结束后&#xff0c;如果想要了解到这次群发活动的效果怎么样&#xff0c;就需要通过一些数据。比如说邮件达到率、打开率、跳出率、退订率等。这些信息可以将收件人的行为数据化&#xff0c;让我们可以更清晰地对活动进行深入分析让我们及时地找出问题和优点&…

【原文链接】Tri-Perspective View for Vision-Based 3D Semantic Occupancy Prediction

原文链接&#xff1a;https://openaccess.thecvf.com/content/CVPR2023/papers/Huang_Tri-Perspective_View_for_Vision-Based_3D_Semantic_Occupancy_Prediction_CVPR_2023_paper.pdf 1. 引言 体素表达需要较大的计算量和特别的技巧&#xff08;如稀疏卷积&#xff09;&…

嵌入式学习-网络编程-Day6

嵌入式学习-网络编程-Day6 一、思维导图 二、作业 1.基于UDP的网络聊天室&#xff08;2024.1.21号前上交&#xff09; 项目需求&#xff1a; 1.如果有用户登录&#xff0c;其他用户可以收到这个人的登录信息 2.如果有人发送信息&#xff0c;其他用户可以收到这个人的群聊信…

无刷电机行业调研:市场销售规模达到537亿元

无刷直流电机(BLDC&#xff1a;Brushless Direct Current Motor)&#xff0c;也被称为电子换向电机(ECM或EC电机)或同步直流电机&#xff0c;是一种使用直流电(DC)电源的同步电机。无刷直流电机实质上为采用直流电源输入&#xff0c;并用逆变器变为三相交流电源&#xff0c;带位…

java idea 中的 Scratches and Consoles

IDEA 中&#xff0c;"Scratches and Consoles" 是一个用于临时代码编辑和交互式开发的工具窗口&#xff0c;作用如下&#xff1a;Scratches&#xff08;草稿&#xff09;&#xff1a;Scratches 是一个用于临时编写和运行代码片段的工具&#xff0c;你可以在其中创建临…

鸿蒙开发系列教程(五)--ArkTS语言:组件开发

1、基础组件 组件API文档&#xff1a;https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V2/84_u58f0_u660e_u5f0f_u5f00_u53d1_u8303_u5f0f_uff09-0000001427744776-V2 查看组件API 外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传 容…

hdu 4507 吉哥系列故事——恨7不成妻

吉哥系列故事——恨7不成妻 题意 一个正整数和 7 7 7 有关当且仅当满足以下条件之一&#xff1a; 数位中某一位是 7 7 7数位和能被 7 7 7 整除这个整数能被 7 7 7 整除 统计 [ l , r ] [l,r] [l,r] 内所有和 7 7 7 无关 的数字的 平方和 思路 这道题需要一点思维。我…

CodeWave学习笔记--采购管理系统

1.CodeWave是什么&#xff1f; CodeWave是一款智能低代码开发平台&#xff0c;基于网易自研拥有大规模参数和深度学习能力的智能模型底座产品架构&#xff0c;为企业级应用提供更加智能化研发的软件生产方式。IT人员可以轻易实现从“智能生成”到“可视化拖拽调整”的全栈低代…

SpringMVC 文件上传和下载

文章目录 1、文件下载2、文件上传3. 应用 Spring MVC 提供了简单而强大的文件上传和下载功能。 下面是对两者的简要介绍&#xff1a; 文件上传&#xff1a; 在Spring MVC中进行文件上传的步骤如下&#xff1a; 在表单中设置 enctype“multipart/form-data”&#xff0c;这样…

Go 日期时间包装器:15条更便捷的时间处理

★ 关注公众号【爱发白日梦的后端】分享技术干货、读书笔记、开源项目、实战经验、高效开发工具等&#xff0c;您的关注将是我的更新动力&#xff01; ” 在Go编程中&#xff0c;处理日期和时间是一项常见任务&#xff0c;涉及到精确性和灵活性。尽管Go的标准库提供了时间包&am…