当前位置: 首页 > news >正文

MySql 数据库题目

数据表

1. 创建oa数据库

2. 创建dept及emp数据表

dept 部门表
字段名说明类型长度约束
id编号int主键,不为空,自增长
name名称varchar20唯一
emp 员工表
字段名说明类型长度约束
id编号int主键,不为空,自增长
name姓名varchar20非空
age年龄int
job职位varchar20非空
salary薪水int
entrydate入职日期date
managerid直属领导IDint
dept_id部门IDint非空,外键(引用dept表主键)

数据


创建数据库

# 创建数据库
create database db_oa; 
# 使用数据库
use oa;

创建表,数据导入 

# 如果表存在直接删除
drop table if exists tb_dept;
drop table if exists tb_emp;

#创建新的表
create table tb_dept 
(
 id int primary key auto_increment not null comment '编号',
 name varchar(20) unique comment '名称'
)comment '部门表';

#删除表
drop table tb_emp
create table tb_emp
(
	id int primary key auto_increment not null comment  '编号',
	name varchar(20) not null comment '名称',
  age int comment '年龄',
	job varchar(20) not null comment '职位',
	salary int comment '薪水',
	entrydate date comment '入职时间',
	managerid int comment '直属领导id',
	dept_id int not null comment '部门id',
	foreign key (dept_id) references tb_dept(id) 
)comment '员工表';

# 查询表
select * from tb_dept 
select * from tb_emp 

# 数据新增
insert into tb_dept values 
(1,'研发部'),
(2,'市场部'),
(3,'财务部'),
(4,'销售部'),
(5,'总经办')

insert into tb_emp values
(1,'金庸',66,'总裁',20000,'2000-01-01',null,5),
(2,'张无忌',20,'项目经理',12500,'2005-12-05',1,1),
(3,'杨肖',33,'开发',8400,'2000-11-03',2,1),
(4,'韦一笑',48,'开发',11000,'2002-02-05',2,1),
(5,'常遇春',43,'开发',10500,'2004-09-07',3,1),
(6,'小昭',19,'程序员鼓励师',6600,'2004-10-12',2,1)

要求 

1. 查询dept表中所有列及所有行
        select * from dept;


2. 查询emp表中id,name,age三列所有记录
        
        select id,name,age from emp;


3. 查询emp表中年龄在50岁以上的所有员工

        select * from emp where age >= 50;


4. 查询emp表中薪水在8000至12000之间的所有员工信息

        select * from emp where salary between 8000 and 12000;


5. 查询emp表中所有职务为开发的员工信息

        select * from emp where job ='开发';


7. 显示emp表中入职时间最长的前3位员工信息

        select * from emp order by entrydate asc limit 3;

8. 查询emp表中所有职务的平均薪水,并按均薪水降序显示
        
        select job, avg(salary) as avg from emp group by job order by avg desc;

9. 查询emp表中各职务的人数,并按人数降序显示
        
        select job, count(*) as num from emp group by job order by num desc;


10. 将emp表中所有员工工资降10%
        update emp set salary = salary * 0.9;


 11. 将emp表中所有年龄在60岁以上的员工删除

        select * from emp where age >= 60 

        delete from emp where age  >= 60
 
 
 
 
 
 
 


    

http://www.dtcms.com/a/109540.html

相关文章:

  • 三防笔记本有什么用 | 三防笔记本有什么特别
  • CentOS中挂载新盘LVM指南:轻松扩展存储空间,解决磁盘容量不足问题
  • ORM mybits mybits-plus
  • 探索现代网络技术:从负载均衡到 Kubernetes
  • ECMAScript介绍
  • 使用C#写的一个Kafka的使用工具
  • git的作用,以及和github的区别
  • 数据结构与算法学习笔记----贪心区间问题
  • C++中的IO流
  • 【动态规划】最长上升子序列模板
  • 网络编程—网络概念
  • 国产编辑器EverEdit - 扩展脚本:让EverEdit支持“批量查找”功能
  • 使用 requests 和 BeautifulSoup 解析淘宝商品
  • 安利免费开源的声音克隆、文本转语音整合包软件、一键本地安装!
  • Shopify独立站开发与运营全解析
  • iOS 18.4修复多个核心安全漏洞,间接增强Find My服务的数据保护能力
  • 基于javaweb的SSM羽毛球会员俱乐部系统场馆课程运动设计与实现(源码+文档+部署讲解)
  • 五种音频器件综合对比——《器件手册--音频器件》
  • 【C++游戏引擎开发】《几何算法》(2):OBB射线检测
  • 【总结】SQL注入防护手段
  • 【11408学习记录】[特殊字符] 三步攻克英语长难句:嵌套结构×平行结构全解析
  • Linux中系统安全及应用
  • axios取消重复请求
  • Java基础:面向对象入门(一)
  • 【AI News | 20250403】每日AI进展
  • Java 实现 字母异位词分组
  • 5. 数据交互基础:从文本加载到向量存储的完整流程
  • Nyquist插件基础:LISP语法-运算符
  • c++基础-----c++ 成员变量初始化顺序
  • Cline – OpenRouter 排名第一的CLI 和 编辑器 的 AI 助手