iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >数据库之MySQL数据操作练习
  • 651
分享到

数据库之MySQL数据操作练习

数据库mysql 2023-09-20 21:09:22 651人浏览 安东尼
摘要

目录 练习内容 worker表要求 创建的表的表结构 表中的数据内容 对数据的操作 1.显示所有职工的基本信息 2.查询所有职工所属部门的部门号,不显示重复的部门号 3.求出所有职工的人数 4.列出最高工和最低工资 5.列出职工的平均工资

目录

练习内容

worker表要求

创建的表的表结构

表中的数据内容

对数据的操作

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

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

3.求出所有职工的人数

4.列出最高工和最低工资

5.列出职工的平均工资和总工资

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

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

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

9.列出工资在1000一2000之间的所有职工姓名

10.列出所有陈姓和李姓的职工姓名

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

12.将职工表worker中的职工按出生的先后顺序排序

13.显示工资最高的前3名职工的职工号和姓名

14.求出各部门党员的人数

15.统计各部门的工资和平均工资

16.列出总人数大于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');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;

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

mysql> select distinct 部门号 from worker;

3.求出所有职工的人数

mysql> select count(*) from worker;

4.列出最高工和最低工资

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

5.列出职工的平均工资和总工资

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

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

mysql> create table worker_day select 职工号,姓名,出生日期 from worker;

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

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

 因为此表中没有性刘的职工,所以查询没有任何内容,若果查询姓张的

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

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

mysql> select 姓名,工作时间 from worker where year(出生日期) < 1960;

因为没有1960年以前出生的职工,所以查询为空表

9.列出工资在1000一2000之间的所有职工姓名

mysql> select 姓名 from worker where 工资 between 1000 and 2000;

 因为没有工资在1000一2000之间的职工,所以查询为空表

10.列出所有陈姓和李姓的职工姓名

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

因为没有姓陈的职工,所以查询结果只有姓李的职工

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

select `职工号`,`姓名`,(locate('党员',政治面貌)) as `是(1)否(0)党员` from worker where `部门号`=102 or `部门号`=103;

locate() 查找某个字段里面是否有某个某个字符串 是(1)否(0) 

12.将职工表worker中的职工按出生的先后顺序排序

mysql> mysql> select * from worker order by year(出生日期);

13.显示工资最高的前3名职工的职工号和姓名

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

14.求出各部门党员的人数

mysql> select 部门号,sum(locate('党员',政治面貌)) 党员数 from worker group by 部门号;

15.统计各部门的工资和平均工资

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

16.列出总人数大于4的部门号和总人数

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

因为没有总人数大于4的部门,所以查询结果为空

来源地址:https://blog.csdn.net/qq_57289939/article/details/131646406

您可能感兴趣的文档:

--结束END--

本文标题: 数据库之MySQL数据操作练习

本文链接: https://www.lsjlt.com/news/413336.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • oracle怎么查询当前用户所有的表
    要查询当前用户拥有的所有表,可以使用以下 sql 命令:select * from user_tables; 如何查询当前用户拥有的所有表 要查询当前用户拥有的所有表,可以使...
    99+
    2024-05-15
    oracle
  • oracle怎么备份表中数据
    oracle 表数据备份的方法包括:导出数据 (exp):将表数据导出到外部文件。导入数据 (imp):将导出文件中的数据导入表中。用户管理的备份 (umr):允许用户控制备份和恢复过程...
    99+
    2024-05-15
    oracle
  • oracle怎么做到数据实时备份
    oracle 实时备份通过持续保持数据库和事务日志的副本来实现数据保护,提供快速恢复。实现机制主要包括归档重做日志和 asm 卷管理系统。它最小化数据丢失、加快恢复时间、消除手动备份任务...
    99+
    2024-05-15
    oracle 数据丢失
  • oracle怎么查询所有的表空间
    要查询 oracle 中的所有表空间,可以使用 sql 语句 "select tablespace_name from dba_tablespaces",其中 dba_tabl...
    99+
    2024-05-15
    oracle
  • oracle怎么创建新用户并赋予权限设置
    答案:要创建 oracle 新用户,请执行以下步骤:以具有 create user 权限的用户身份登录;在 sql*plus 窗口中输入 create user identified ...
    99+
    2024-05-15
    oracle
  • oracle怎么建立新用户
    在 oracle 数据库中创建用户的方法:使用 sql*plus 连接数据库;使用 create user 语法创建新用户;根据用户需要授予权限;注销并重新登录以使更改生效。 如何在 ...
    99+
    2024-05-15
    oracle
  • oracle怎么创建新用户并赋予权限密码
    本教程详细介绍了如何使用 oracle 创建一个新用户并授予其权限:创建新用户并设置密码。授予对特定表的读写权限。授予创建序列的权限。根据需要授予其他权限。 如何使用 Oracle 创...
    99+
    2024-05-15
    oracle
  • oracle怎么查询时间段内的数据记录表
    在 oracle 数据库中查询指定时间段内的数据记录表,可以使用 between 操作符,用于比较日期或时间的范围。语法:select * from table_name wh...
    99+
    2024-05-15
    oracle
  • oracle怎么查看表的分区
    问题:如何查看 oracle 表的分区?步骤:查询数据字典视图 all_tab_partitions,指定表名。结果显示分区名称、上边界值和下边界值。 如何查看 Oracle 表的分区...
    99+
    2024-05-15
    oracle
  • oracle怎么导入dump文件
    要导入 dump 文件,请先停止 oracle 服务,然后使用 impdp 命令。步骤包括:停止 oracle 数据库服务。导航到 oracle 数据泵工具目录。使用 impdp 命令导...
    99+
    2024-05-15
    oracle
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作