MySQL数据库练习二

素材:表名: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');
INSERT INTO `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、显示所有职工的基本信息。

mysql> select * from worker;
+-----------+-----------+--------------+---------+--------------+--------+--------------+--------+
| 部门号    | 职工号    | 工作时间     | 工资    | 政治面貌     | 姓名   | 出生日期     | 性别   |
+-----------+-----------+--------------+---------+--------------+--------+--------------+--------+
|       101 |      1001 | 2015-05-04   | 3500.00 | 群众         | 张三   | 1990-07-01   | 男     |
|       101 |      1002 | 2017-02-06   | 3200.00 | 团员         | 李四   | 1997-02-08   | 男     |
|       102 |      1003 | 2011-01-04   | 8500.00 | 党员         | 王亮   | 1983-06-08   | 女     |
|       102 |      1004 | 2016-10-10   | 5500.00 | 群众         | 赵六   | 1994-09-05   | 女     |
|       102 |      1005 | 2014-04-01   | 4800.00 | 党员         | 钱七   | 1992-12-30   | 女     |
|       102 |      1006 | 2017-05-05   | 4500.00 | 党员         | 孙八   | 1996-09-02   | 女     |
|       103 |      1007 | 2011-02-12   | 3000.00 | 团员         | 刘六   | 1992-08-13   | 男     |
|       103 |      1008 | 2016-08-13   | 3800.00 | 群众         | 王虹   | 1992-08-13   | 女     |
+-----------+-----------+--------------+---------+--------------+--------+--------------+--------+
8 rows in set (0.00 sec)

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

mysql> select distinct 部门号-> from worker;
+-----------+
| 部门号    |
+-----------+
|       101 |
|       102 |
|       103 |
+-----------+
3 rows in set (0.01 sec)

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

mysql> select count(姓名) from worker;
+---------------+
| count(姓名)   |
+---------------+
|             8 |
+---------------+
1 row in set (0.03 sec)

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

mysql> select max(工资) from worker;
+-------------+
| max(工资)   |
+-------------+
|     8500.00 |
+-------------+
1 row in set (0.01 sec)mysql> select min(工资) from worker;
+-------------+
| min(工资)   |
+-------------+
|     3000.00 |
+-------------+
1 row in set (0.00 sec)

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

mysql> select avg(工资) from worker;
+-------------+
| avg(工资)   |
+-------------+
| 4600.000000 |
+-------------+
1 row in set (0.00 sec)mysql> select sum(工资) from worker;
+-------------+
| sum(工资)   |
+-------------+
|    36800.00 |
+-------------+
1 row in set (0.00 sec)

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

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

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

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

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

11、列出所有刘姓和王姓的职工姓名。

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

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

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

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

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

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

常见命令:

1.查看数据库

mysql> show databases;

2.进入数据库

mysql> use db_classes;

3.查看表

mysql> show tables;

4.展示表结构

mysql> desc worker;

5.展示表详情

mysql> select * from worker;

6.添加一列

mysql> alter table worker add 性别 varchar(10);

7.修改约束条件

mysql> alter table worker modify 性别 varchar(10) check(性别 in ("男","女"));

8.添加新的性别数据

mysql> update worker set 性别="男" where 部门号="101";
mysql> update worker set 性别="女" where 部门号="102";

9.添加数据

mysql> insert into worker values(103,1008,"2016-08-13",3800.00,"群众","王虹","1992-08-13","女");
mysql> insert into worker values(103,1007,"2011-02-12",3000.00,"团员","刘六","1992-08-13","男");

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

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

相关文章

欢乐钓鱼大师攻略大全,新手钓鱼入坑必备攻略!

《欢乐钓鱼大师》是一款深受玩家喜爱的钓鱼手游,在游戏中,玩家可以通过升级和更换鱼竿来享受钓鱼的乐趣,并有机会钓到各种稀有鱼类。然而,很多玩家在闯关过程中遇到了不少困难。为了帮助大家更好地掌握游戏技巧,小编特…

4 软件定义安全综合:使用c/s模式进行控制器数据安全交互管理

在SDN三层结构中,我们通过OpenFlow 协议可以控制数据转发设备的相关行为(包括收集设备的信息),那么控制器上的数据能否通过应用层的程序进行管理调用呢? SDN(软件定义网络)的北向开发是指通过编…

ASUS Zenbook PE重装系统后一直转圈不断重启

问题描述: ASUS Zenbook PE重装系统后一直转圈不断重启 问题原因: RST驱动问题 解决办法: 使用U盘安装原版系统,安装过程中,发现磁盘页面没有不识别硬盘,此时选择加载驱动,加载RST驱动。一…

二进制搭建k8s

实验环境: k8s集群master01:192.168.1.11 k8s集群master02:192.168.1.22 master虚拟ip:192.168.1.100 k8s集群node01:192.168.1.33 k8s集群node01:192.168.1.44 nginxkeepalive01(master):192.168.1.55 nginxkeepalive02&a…

渲染农场是什么意思?瑞云渲染为你解答

渲染农场是一种通过集合多台计算机的计算能力来加速图像渲染过程的系统。它尤其适用于动画、电影特效和高端视觉效果的制作,这些领域通常需要处理非常复杂和计算密集型的渲染任务。 渲染农场就是一大群电脑,他们一起可以快速渲染出漂亮的图像。在做动画片…

客观需求验证的常见5大步骤(实施版)

我们在挖掘用户需求时,往往容易犯伪需求或需求错位等问题,因此需要进行客观需求验证。通过客观的验证,我们可以有效减少主观判断误差问题,确保需求的准确性,从而降低需求变更和项目风险的概率,减少开发成本…

LeetCode算法题:11. 盛最多水的容器(Java)(双指针问题总结)

给定一个长度为 n 的整数数组 height 。有 n 条垂线&#xff0c;第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线&#xff0c;使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 提示&#xff1a; n height.length2 <…

第十四届蓝桥杯大赛软件赛国赛C/C++ 大学 B 组 数三角

//枚举顶点。 //不存在等边三角形 #include<bits/stdc.h> using namespace std; #define int long long const int n2e311; int a,b,c,l[n],r[n]; signed main() {ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);cin>>a;for(int i1;i<a;i){cin>>…

UE4_环境_局部雾化效果

学习笔记&#xff0c;不喜勿喷&#xff01;侵权立删&#xff01;祝愿大家生活越来越好&#xff01; 本文重点介绍下材质节点SphereMask节点在体积雾中的使用方法。 一、球体遮罩SphereMask材质节点介绍&#xff1a; 球体蒙版&#xff08;SphereMask&#xff09; 表达式根据距…

【笔记】Android Studio 版本信息

Android Studio Jellyfish | 2023.3.1 | Android Developers Android Studio 是开发 Android 应用的官方 IDE&#xff0c;包含构建 Android 应用所需的所有功能。 AS与AGP版本适用关系 AGP(Android Gradle plugin) Android gradle插件 Androdi Studio versionRequired AG…

2024红帽全球峰会:CEO行业洞察分享

作为全球IT领域一年一度的行业盛宴&#xff0c;2024红帽全球峰会于近日盛大召开。生成式AI与大模型是当前IT行业最受关注的热点话题&#xff0c;而红帽在生成式AI与大模型领域的最新动作&#xff0c;也理所当然地成为了本届峰会观众目光聚集的焦点。 作为世界领先的开源解决方案…

使用vcpkg与json文件自动安装项目依赖库

说明 本文记录自己使用vcpkg.json文件自动安装依赖库并完成编译的全过程。 关于vcpkg是什么这里就不多详细解释&#xff0c;可以看一下专门的介绍及安装的文章&#xff0c;总之了解这是一个C的包管理工具就可以了。 流程 下面介绍从GitHub上克隆C项目以及为这个项目安装所需…

二叉树的常见操作

建立树 复制二叉树 计算深度 计算总结点数 计算叶子结点数

OpenHarmony标准设备应用开发(二)——布局、动画与音乐

本章是 OpenHarmony 标准设备应用开发的第二篇文章。我们通过知识体系新开发的几个基于 OpenHarmony3.1 Beta 标准系统的样例&#xff1a;分布式音乐播放、传炸弹、购物车等样例&#xff0c;分别介绍下音乐播放、显示动画、动画转场&#xff08;页面间转场&#xff09;三个进阶…

AI工具的热门与卓越:揭示AI技术的实际应用和影响

文章目录 每日一句正能量前言常用AI工具创新AI应用个人体验分享后记 每日一句正能量 我们在我们的劳动过程中学习思考&#xff0c;劳动的结果&#xff0c;我们认识了世界的奥妙&#xff0c;于是我们就真正来改变生活了。 前言 随着人工智能&#xff08;AI&#xff09;技术的快…

深度剖析MyBatis的二级缓存

二级缓存的原理 MyBatis 二级缓存的原理是什么&#xff1f; 二级缓存的原理和一级缓存一样&#xff0c;第一次查询会将数据放到 缓存 中&#xff0c;然后第二次查询直接去缓存读取。但是一级缓存是基于 SqlSession 的&#xff0c;二级缓存是基于 mapper 的 namespace 的。也就是…

关于API接口的自述

在实际工作中&#xff0c;我们需要经常跟第三方平台打交道&#xff0c;可能会对接第三方平台API接口&#xff0c;或者提供API接口给第三方平台调用。 那么问题来了&#xff0c;如果设计一个优雅的API接口&#xff0c;能够满足&#xff1a;安全性、可重复调用、稳定性、好定位问…

Qt运行时,如何设置第一个聚焦的控件

问题&#xff1a;Qt第一个聚焦的控件&#xff0c;如何自行设置&#xff1f; 尝试&#xff1a; 1.在代码中设置 lineEdit->setFocus() 。无效&#xff01; 2.Qt Designer–打开form1.ui–菜单栏下一行–Edit Tab Order–按顺序点击–菜单栏下一行–Edit Widgets–退出。无效…

为什么做了功能测试还要做接口测试

接口测试与功能测试不是重复的测试,而是互为补充的测试策略。 在软件测试领域,接口测试和功能测试被视为质量保证过程中至关重要的组成部分。尽管它们之间存在部分重复,但更多的情况下,它们相辅相成,各自发挥着独特的作用。本文将探讨接口测试与功能测试之间的关系,以及它…

【easyX】动手轻松掌握easyX 1

01 简单绘图 在这个程序中&#xff0c;我们先初始化绘图窗口。其次&#xff0c;简单绘制两条线。 #include <graphics.h>//绘图库头文件 #include <stdio.h> int main() {initgraph(640, 480);//初始化640✖480绘图屏幕line(200, 240, 440, 240);//画线(200,240)…