Mysq练习----财务管理系统-数据库模块
题目:
程序员冯帅前脚更把学生系统理顺,组长看他 sql 写的不错,于是给他安 排跟着一个新项目,项目是为公司的财务部门进行财务管理的。下面是项目所 需的数据表和功能需求
数据表:
雇员表(employee):雇员编号(empid,主键),姓名(name),性别(sex), 职称(title),出生日期(birthday),所属部门(depid) 部门(department):部门编号(depid,主键),部门名称(depname)
工资表(salary):雇员编号(empid),基本工资(basesalary),职务工 资(titlesalary),扣除(deduction)
需求:
- 修改表结构,在部门表中添加部门简介字段
- 将李四的职称改为“工程师”,并将她的基本工资改成 2000,职务工资 为 700
- 删除人事部门的部门记录
- 查询出每个雇员的雇员编号,实发工资,应发工资
- 查询姓张且年龄小于 40 的员工记录
- 查询雇员的雇员编号,姓名,职称,部门名称,实发工资
- 查询销售部门的雇员姓名,工资
- 统计各职称的人数
- 统计各部门的部门名称,实发工资总和,平均工资
- 查询比销售部门所有员工基本工资都高的雇员姓名
建表:
-- 雇员表
CREATE TABLE employee(empid int auto_increment PRIMARY key,ename VARCHAR(4),sex enum('男','女'),title VARCHAR(5),birthday date,depid int
) ENGINE = INNODB DEFAULT charset = utf8mb4;-- 部门
CREATE TABLE department(depid int PRIMARY key,depname VARCHAR(10)
)ENGINE = INNODB DEFAULT charset = utf8mb4;-- 工资表
CREATE TABLE salary(empid int ,basesalary VARCHAR(10),titlesalary VARCHAR(10),deduction VARCHAR(10)
)ENGINE = INNODB DEFAULT charset = utf8mb4;
习题:
-- 1. 修改表结构,在部门表中添加部门简介字段
ALTER TABLE department add COLUMN info varchar(20);
-- 2. 将李四的职称改为“工程师”,并将她的基本工资改成 2000,职务工资 为 700
UPDATE employee AS e1 SET e1.title = '工程师' WHEREe1.empid = ( SELECT a.empid from ( SELECT em.empid FROM employee AS em WHERE em.ename = '李四' ) as a);
UPDATE salary AS s1 SET s1.basesalary = 2000,s1.titlesalary = 700 WHEREs1.empid = ( SELECT a.empid from ( SELECT em.empid FROM employee AS em WHERE em.ename = '李四' ) as a);
SELECT em.* FROM salary AS em;
-- 3. 删除人事部门的部门记录
DELETE from department as dp where dp.depname = '人事部';
SELECT * from department;
-- 4. 查询出每个雇员的雇员编号,实发工资,应发工资
SELECT sa.empid as '编号',
(sa.basesalary + sa.titlesalary - sa.deduction) as '实发工资',
(sa.basesalary + sa.titlesalary) as '应发工资'
from salary as sa
-- 5. 查询姓张且年龄小于 40 的员工记录
SELECT em.* FROM employee AS em WHERE TIMESTAMPDIFF( YEAR, em.birthday, CURDATE()) < 40;
-- em.empid = ( SELECT TIMESTAMPDIFF( YEAR, em.birthday, CURDATE( ) ) AS age FROM employee AS em WHERE age < 40 );
-- 6. 查询雇员的雇员编号,姓名,职称,部门名称,实发工资
SELECT em.empid,em.ename,em.title,dp.depname,
(sa.basesalary + sa.titlesalary - sa.deduction) as '实发工资'
from employee as em
LEFT join department as dp on em.depid = dp.depid
LEFT join salary as sa on em.empid = sa.empid;-- 7. 查询销售部门的雇员姓名,工资
SELECT em.ename,sa.basesalary
from employee as em, salary as sa,department as dp where dp.depname = '销售部' and em.depid = dp.depid and em.empid = sa.empid;
-- 8. 统计各职称的人数
SELECT em.title,count(*) from employee as em GROUP BY em.title;
-- 9. 统计各部门的部门名称,实发工资总和,平均工资
SELECTdp.depname,sum( ( sa.basesalary + sa.titlesalary - sa.deduction ) ) AS '实发工资总和',AVG( sa.basesalary + sa.titlesalary - sa.deduction ) as '平均工资'
FROMdepartment AS dp,employee AS em,salary AS sawhere em.depid = dp.depid and em.empid = sa.empidGROUP BY dp.depname;
-- 10. 查询比销售部门所有员工基本工资都高的雇员姓名
SELECT em.ename from employee as em where em.empid = (
SELECT sa.empid from salary as sa where sa.basesalary > (
SELECT max(sa.basesalary) from employee as em,salary as sa where em.empid = sa.empid and em.depid =(
SELECT dp.depid from department as dp where dp.depname = '销售部')));
Mysq练习----财务管理系统-数据库模块相关推荐
- 基于java校园新闻管理系统数据库模块的论文_基于JSP的校园新闻管理系统的设计与实现(MySQL)...
基于JSP的校园新闻管理系统的设计与实现(MySQL)(包含任务书,开题报告,中期报告,毕业论文,28000字,程序代码,数据库) 摘 要 本人从校园网建设的实际情况出发,经过对相关校园新闻资讯网站 ...
- 基于java校园新闻管理系统数据库模块的论文_校园新闻管理系统设计与实现 大学论文.doc...
校园新闻管理系统设计与实现 大学论文 专科生毕业论文(设计) 题目: 校园新闻管理系统设计与实现 学院 / 系 专 业 班 级 学 号 学生姓名 指导教师 2016年11月20日 摘 要 随着Inte ...
- java实现家庭财务管理_基于jsp的家庭财务管理系统-JavaEE实现家庭财务管理系统 - java项目源码...
基于jsp+servlet+pojo+mysql实现一个javaee/javaweb的家庭财务管理系统, 该项目可用各类java课程设计大作业中, 家庭财务管理系统的系统架构分为前后台两部分, 最终实 ...
- 基于php的个人财务管理系统
本系统的主要任务是时时记录用户的收支,支出管理.本系统包含财务管理.财务账户.财务种类.财务统计.用户管理.登陆信息等功能模块,全面系统地实现了个人财务管理的功能.,那么我所选择的开发语言是php.后 ...
- 基于php054个人财务管理系统
本系统的主要任务是时时记录用户的收支,支出管理.本系统包含财务管理.财务账户.财务种类.财务统计.用户管理.登陆信息等功能模块,全面系统地实现了个人财务管理的功能.,那么我所选择的开发语言是php.后 ...
- 计算机毕业设计php的个人财务管理系统
项目介绍 本系统的主要任务是时时记录用户的收支,支出管理.本系统包含财务管理.财务账户.财务种类.财务统计.用户管理.登陆信息等功能模块,全面系统地实现了个人财务管理的功能.,那么我所选择的开发语言是 ...
- [源码和文档分享]基于JAVA和SQL SERVER数据库实现的个人财务管理系统
一.需求分析 个人财务管理系统是智能化简单化个人管理的重要的组成部分.并且随着计算机技术的飞速发展,计算机在管理方面应用的旁及,利用计算机来实现个人财务管理势在必行.本文首先介绍了个人财务管理系统的开 ...
- 基于JAVA和SQL SERVER数据库实现个人财务管理系统
源码下载 http://www.byamd.xyz/hui-zong-1/ 一.需求分析 个人财务管理系统是智能化简单化个人管理的重要的组成部分.并且随着计算机技术的飞速发展,计算机在管理方面应用的旁 ...
- 【电商】FMS财务管理系统---数据流转模块组成
继了解FMS财务管理系统定义之后,如何设计一个FMS系统成了新的问题,笔者在此介绍了FMS的业务逻辑和结构,希望对读者有所帮助. 在此还是要强调一下,虽然这里称之为"财务系统",但 ...
最新文章
- 【AJAX】DWR使用总结
- [Java]list集合为空或为null的区别
- 各国家分析之- 阿根廷与乌拉圭
- python怎么导入txt数据库_Python导入txt数据到mysql的方法
- vue.js ui_UI / UX开发:考虑Vue.js
- C. Number of Pairs
- 单机版简易考试系统开发过程讲解(C#注册机、用户注册、考试系统、×××全部源码)...
- mysql批量取消多行sql_mysql批量删除指定前缀的表,批量修改表名的SQL语句
- Flash 已死,Deno 当立?
- 定了!百度运维工程师非法挖矿获利 10 万、被判 3 年,如何避免面向监狱编程?...
- Windows Server 2003 来配置网络地址转换 (NAT
- 阶段3 1.Mybatis_09.Mybatis的多表操作_8 mybatis多对多操作-查询角色获取角色下所属用户信息...
- 群晖DS218+部署kafka
- html js 鼠标变图片大小,js之图片变大变小效果
- 知云文献翻译_研究生必备的文献翻译软件——知云文献翻译
- java安装cab破损,Visual Studio 2005 Professional Edition损坏的CAB文件
- 电容或电感的电压_眼见不一定为实!电阻、电容和电感的实际等效模型
- 62道开发人员面试经典题
- h5 移动开发 html页面跳转,iosh5混合开发项目仿app页面跳转优化
- Xilinx Zynq-7000 PL端Kintex-7架构可编程逻辑资源,PS端主频可高达1GHz晶振、电源接口和拨码开关
热门文章
- Unable to find resource
- NAS,IP SAN以及iSCSCI SAN存储的一些认识和理解
- 国际中的steam教育发展与启示
- mac 改键工具 keyremap4macbook or Karabiner
- java httpClient Digest Auth 认证
- ASP.net创建Controller视图时报错(Exception has been thrown by the target of an Invocation.)
- 2021-09-10 网安实验-漏洞扫描与利用之Nmap网络扫描脚本使用
- 大数据培训怎么样,怎么选择合适大数据培训机构?
- 最小二乘法拟合圆c语言,最小二乘法拟合圆公式推导及其实现
- 网络安全-跨站请求伪造(CSRF)的原理、攻击及防御