Mysql的case when then实现报表分组不同字段显示不同结果打勾

今天在做一个企业的请假报表功能时,处理了一个函数实现下拉框获取的值显示不同的请假类型。如图所示:
在这里插入图片描述
Mysql数据库语句

SELECT
 position_hiera,
 dept_name,
 user_name,
CASE
  WHEN vacate_type = '年假' THEN
  '✔'
END AS vacate_type1,
CASE
  WHEN vacate_type = '婚假' THEN
  '✔'
END AS vacate_type2,
CASE
  WHEN vacate_type = '丧假' THEN
  '✔'
END AS vacate_type3,
CASE
  WHEN vacate_type = '产假' THEN
  '✔'
END AS vacate_type4,
CASE
  WHEN vacate_type = '陪产假' THEN
  '✔'
END AS vacate_type5,
CASE
  WHEN vacate_type = '病假' THEN
  '✔'
END AS vacate_type6,
CASE 
  WHEN vacate_type = '事假' THEN
  '✔' 
 END AS vacate_type7,
CASE
  WHEN vacate_type = '年假' THEN
  '年假' 
  WHEN vacate_type = '婚假' THEN
  '婚假' 
  WHEN vacate_type = '丧假' THEN
  '丧假' 
  WHEN vacate_type = '产假' THEN
  '产假' 
  WHEN vacate_type = '陪产假' THEN
  '陪产假' 
  WHEN vacate_type = '病假' THEN
  '病假' 
  WHEN vacate_type = '事假' THEN
  '事假' 
 END AS vacate_type8,
 start_date,
 end_date,
 vacate_len,
 vacate 
FROM
 oa_vacate 
WHERE
 (
  position_hiera) IN (
 SELECT
  position_hiera
 FROM
  oa_vacate 
 GROUP BY
 position_hiera
 )
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值