作业小记

1、订货主档 查询送货地址在北京市的订单总量和最高运费

select count(送货地址) as 北京市,max(运费) from 订货主档 where 送货地址 like '%北京市%'

2、提取出上海市男性员工的信息并算出年龄和婚姻状况(已婚为0,未婚为-1)并按年龄大小升序排序,并提取出前十 (姓名,年龄,性别,婚姻状况,家庭住址)

select 姓名,家庭住址,year(now())-year(出生日期) as 年龄,
case
性别
when -1 then '女'
when 0 then '男' else '不详'
end 性别,
case
婚姻状况
when -1 then '未婚'
when 0 then '已婚' else '不详'
end 婚姻状况
from 员工 where 性别=0 and 家庭住址 like '%上海市%' order by 年龄 desc limit 10

3、学生表 统计那个专业没有男生

SELECT    `订单号码`,`送货方式`,`运费`FROM `订货主档` WHERE   `运费`>(SELECT   min(`运费`) FROM `订货主档` WHERE`送货方式`=1)AND `运费`<(SELECT  AVG(`运费`) FROM `订货主档` WHERE`送货方式`=2)

4、员工表 统计本公司信息部的基本信息(人数,月工资发放总额,员工平均工资,月最高工资,月最低工资)

SELECT    COUNT(`姓名`)AS 人数,SUM(`目前薪资`)AS 月工资发放总额,ROUND(AVG(`目前薪资`),3)AS 员工平均工资,MAX(`目前薪资`)AS月工资最高,MIN(`目前薪资`)AS月工资最低  FROM `员工` WHERE  `部门`='信息部'
-- 研发部 7
ALTER TABLE `员工` MODIFY COLUMN `目前薪资`INT(20)
SELECT    `部门` ,COUNT(`姓名`)AS 人数
,SUM(`目前薪资`)AS 月工资发放总额,
ROUND(AVG(`目前薪资`),3) 员工平均工资,
MAX(`目前薪资`)月工资最高,
MIN(`目前薪资`)月工资最低  FROM `员工`       GROUP BY   `部门`  HAVING 月工资最高>6600    ORDER BY  月工资最高 LIMIT 3

5、员工表 统计出信息部中男员工的人数

select 部门,count(*) as 人数,
case
性别
when -1 then '女'
when 0 then '男' else '不详'
end 性别
from 员工 where 部门='信息部' and 性别=0

6、员工表 查询比信息部最高工资还要高的其他部门员工的工资情况

select 姓名,部门,max(目前薪资) as 最高工资
from 员工 where not 部门='信息部'

7、员工表 统计各个部门的基本信息(人数,月工资支出,平均工资,月最高工资,月最低工资)并且要求过滤出最高工资小于6600人的部门,同时按最高工资由低到高进行部门排序,显示前三位

ALTER TABLE `员工` MODIFY COLUMN `目前薪资`INT(20)
SELECT    `部门` ,COUNT(`姓名`)AS 人数
,SUM(`目前薪资`)AS 月工资发放总额,
ROUND(AVG(`目前薪资`),3) 员工平均工资,
MAX(`目前薪资`)月工资最高,
MIN(`目前薪资`)月工资最低  FROM `员工`       GROUP BY   `部门`  HAVING 月工资最高>6600    ORDER BY  月工资最高 LIMIT 3

8、查询出课程2中选修课可获得的最高学分是多少,和必修课可获得学分的平均学分

SELECT 课程分类,SUM(学分)AS 总学分,AVG(学分)AS 平均学分 FROM 课程2 GROUP BY 课程分类

9、员工表 提取员工表内出生日期在1977年居住在北京的女员工资料,并按司龄降序排列(姓名,出生日期,司龄,家庭住址,性别,婚姻状况)

select 姓名,出生日期, year(NOW())-1997>=0 as 司龄,家庭住址,
case
性别
when -1 then '女'
when 0 then '男' else '不详'
end 性别,
case
婚姻状况
when -1 then '未婚'
when 0 then '已婚' else '不详'
end 婚姻状况 from 员工 
where 性别=-1 and 家庭住址 like '%北京%' order by 司龄 desc

10、关注大龄单身汉,公司发放福利,请把员工表下各部门家住北京工龄20年以上年龄40岁以上工资3000元以上的未婚男性按工龄
每1岁分组并按工资降序排列(工龄26岁以下为第一阶段,工龄26岁为第二阶段,工龄27岁为第三阶段,工龄27岁以上为第四阶段,)。

select 姓名,家庭住址,year(now())-year(出生日期) as 年龄,year(now())-year(雇佣日期) as 工龄,
case
性别
when -1 then '女'
when 0 then '男' else '不详'
end 性别,
case
when year(now())-year(雇佣日期)<26 then '第一阶段'
when year(now())-year(雇佣日期)=26 then '第二阶段'
when year(now())-year(雇佣日期)=27 then '第三阶段'
when year(now())-year(雇佣日期)>27 then '第四阶段' else '不详'
end as 工龄,
case
婚姻状况
when -1 then '未婚'
when 0 then '已婚' else '不详'
end 婚姻状况,目前薪资
from 员工 where 性别=0 and 家庭住址 like '%北京%' and 目前薪资>3000 order by 年龄
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值