题目:

程序员冯帅前脚更把学生系统理顺,组长看他 sql 写的不错,于是给他安 排跟着一个新项目,项目是为公司的财务部门进行财务管理的。下面是项目所 需的数据表和功能需求
数据表:
雇员表(employee):雇员编号(empid,主键),姓名(name),性别(sex), 职称(title),出生日期(birthday),所属部门(depid) 部门(department):部门编号(depid,主键),部门名称(depname)
工资表(salary):雇员编号(empid),基本工资(basesalary),职务工 资(titlesalary),扣除(deduction)
需求:

  1. 修改表结构,在部门表中添加部门简介字段
  2. 将李四的职称改为“工程师”,并将她的基本工资改成 2000,职务工资 为 700
  3. 删除人事部门的部门记录
  4. 查询出每个雇员的雇员编号,实发工资,应发工资
  5. 查询姓张且年龄小于 40 的员工记录
  6. 查询雇员的雇员编号,姓名,职称,部门名称,实发工资
  7. 查询销售部门的雇员姓名,工资
  8. 统计各职称的人数
  9. 统计各部门的部门名称,实发工资总和,平均工资
  10. 查询比销售部门所有员工基本工资都高的雇员姓名
    建表:
-- 雇员表
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练习----财务管理系统-数据库模块相关推荐

  1. 基于java校园新闻管理系统数据库模块的论文_基于JSP的校园新闻管理系统的设计与实现(MySQL)...

    基于JSP的校园新闻管理系统的设计与实现(MySQL)(包含任务书,开题报告,中期报告,毕业论文,28000字,程序代码,数据库) 摘  要 本人从校园网建设的实际情况出发,经过对相关校园新闻资讯网站 ...

  2. 基于java校园新闻管理系统数据库模块的论文_校园新闻管理系统设计与实现 大学论文.doc...

    校园新闻管理系统设计与实现 大学论文 专科生毕业论文(设计) 题目: 校园新闻管理系统设计与实现 学院 / 系 专 业 班 级 学 号 学生姓名 指导教师 2016年11月20日 摘 要 随着Inte ...

  3. java实现家庭财务管理_基于jsp的家庭财务管理系统-JavaEE实现家庭财务管理系统 - java项目源码...

    基于jsp+servlet+pojo+mysql实现一个javaee/javaweb的家庭财务管理系统, 该项目可用各类java课程设计大作业中, 家庭财务管理系统的系统架构分为前后台两部分, 最终实 ...

  4. 基于php的个人财务管理系统

    本系统的主要任务是时时记录用户的收支,支出管理.本系统包含财务管理.财务账户.财务种类.财务统计.用户管理.登陆信息等功能模块,全面系统地实现了个人财务管理的功能.,那么我所选择的开发语言是php.后 ...

  5. 基于php054个人财务管理系统

    本系统的主要任务是时时记录用户的收支,支出管理.本系统包含财务管理.财务账户.财务种类.财务统计.用户管理.登陆信息等功能模块,全面系统地实现了个人财务管理的功能.,那么我所选择的开发语言是php.后 ...

  6. 计算机毕业设计php的个人财务管理系统

    项目介绍 本系统的主要任务是时时记录用户的收支,支出管理.本系统包含财务管理.财务账户.财务种类.财务统计.用户管理.登陆信息等功能模块,全面系统地实现了个人财务管理的功能.,那么我所选择的开发语言是 ...

  7. [源码和文档分享]基于JAVA和SQL SERVER数据库实现的个人财务管理系统

    一.需求分析 个人财务管理系统是智能化简单化个人管理的重要的组成部分.并且随着计算机技术的飞速发展,计算机在管理方面应用的旁及,利用计算机来实现个人财务管理势在必行.本文首先介绍了个人财务管理系统的开 ...

  8. 基于JAVA和SQL SERVER数据库实现个人财务管理系统

    源码下载 http://www.byamd.xyz/hui-zong-1/ 一.需求分析 个人财务管理系统是智能化简单化个人管理的重要的组成部分.并且随着计算机技术的飞速发展,计算机在管理方面应用的旁 ...

  9. 【电商】FMS财务管理系统---数据流转模块组成

    继了解FMS财务管理系统定义之后,如何设计一个FMS系统成了新的问题,笔者在此介绍了FMS的业务逻辑和结构,希望对读者有所帮助. 在此还是要强调一下,虽然这里称之为"财务系统",但 ...

最新文章

  1. 【AJAX】DWR使用总结
  2. [Java]list集合为空或为null的区别
  3. 各国家分析之- 阿根廷与乌拉圭
  4. python怎么导入txt数据库_Python导入txt数据到mysql的方法
  5. vue.js ui_UI / UX开发:考虑Vue.js
  6. C. Number of Pairs
  7. 单机版简易考试系统开发过程讲解(C#注册机、用户注册、考试系统、×××全部源码)...
  8. mysql批量取消多行sql_mysql批量删除指定前缀的表,批量修改表名的SQL语句
  9. Flash 已死,Deno 当立?
  10. 定了!百度运维工程师非法挖矿获利 10 万、被判 3 年,如何避免面向监狱编程?...
  11. Windows Server 2003 来配置网络地址转换 (NAT
  12. 阶段3 1.Mybatis_09.Mybatis的多表操作_8 mybatis多对多操作-查询角色获取角色下所属用户信息...
  13. 群晖DS218+部署kafka
  14. html js 鼠标变图片大小,js之图片变大变小效果
  15. 知云文献翻译_研究生必备的文献翻译软件——知云文献翻译
  16. java安装cab破损,Visual Studio 2005 Professional Edition损坏的CAB文件
  17. 电容或电感的电压_眼见不一定为实!电阻、电容和电感的实际等效模型
  18. 62道开发人员面试经典题
  19. h5 移动开发 html页面跳转,iosh5混合开发项目仿app页面跳转优化
  20. Xilinx Zynq-7000 PL端Kintex-7架构可编程逻辑资源,PS端主频可高达1GHz晶振、电源接口和拨码开关

热门文章

  1. Unable to find resource
  2. NAS,IP SAN以及iSCSCI SAN存储的一些认识和理解
  3. 国际中的steam教育发展与启示
  4. mac 改键工具 keyremap4macbook or Karabiner
  5. java httpClient Digest Auth 认证
  6. ASP.net创建Controller视图时报错(Exception has been thrown by the target of an Invocation.)
  7. 2021-09-10 网安实验-漏洞扫描与利用之Nmap网络扫描脚本使用
  8. 大数据培训怎么样,怎么选择合适大数据培训机构?
  9. 最小二乘法拟合圆c语言,最小二乘法拟合圆公式推导及其实现
  10. 网络安全-跨站请求伪造(CSRF)的原理、攻击及防御