• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

mysql 纵向 数据 展示横行字段

mysql 搞代码 7年前 (2018-06-03) 272次浏览 已收录 0个评论

mysql 纵向 数据 显示横行字段

CREATE TABLE `t_dictionary` (
  `id` varchar(32) NOT NULL,
  `name` varchar(50) default NULL,
  `context` varchar(200) default NULL,
  `type` char(2) default NULL,
  `state` char(2) default NULL,
  `deleteFlag` char(2) default NULL,
  `sort` int(11) default NULL,
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=’字典表’;

CREATE TABLE `t_substituteleaving_new_leave` (
  `id` varchar(32) NOT NULL,
  `beginDate` datetime default NULL,
  `endDate` datetime default NULL,
  `days` varchar(10) default NULL,
  `dictionaryId` varchar(32) default NULL,
  `description` varchar(200) default NULL,
  `opinion` varchar(200) default NULL,
  `rejected` varchar(200) default NULL,
  `userId` varchar(32) default NULL,
  `userName` varchar(50) default NULL,
  `moneyFlag` char(2) default NULL,
  `settlementFlag` char(2) default NULL,
  `deleteFlag` char(2) default NULL,
  `state` char(2) default NULL,
  `createDate` datetime default NULL,
  `AUDITID` varchar(32) default NULL,
  `AUDITDATE` datetime default NULL,
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT=’请假信息表’;

 

select  l.userName,
     sum(if(name=’病假’,l.days,0) ) AS 病假,
     sum(if(name=’事假’,l.days,0)) AS 事假,
     sum(if(name=’婚假’,l.days,0)) AS 婚假,
     sum(if(name=’产假’,l.days,0)) AS 产假,
     sum(if(name=’丧假’,l.days,0)) AS 丧假,
     sum(if(name=’公假’,l.days,0)) AS 公假,
     sum(if(name=’其他’,l.days,0)) AS 其他,
     SUM(l.days) AS TOTAL
     from t_leave l left join  t_dictionary d on d.id=l.dictionaryId group by l.userName


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:mysql 纵向 数据 展示横行字段
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址