2
我有ff。数据..使用Pivot表的Mysql查询
empID Login Date TimeIN TimeOut 1001 01/01/2017 08:00 17:00 1001 01/02/2017 07:59 17:02 1001 01/03/2017 07:54 17:05 1001 01/04/2017 08:00 17:04 1001 01/05/2017 07:56 17:03 1001 01/06/2017 07:52 17:01 1001 01/07/2017 07:53 17:02
我所要的输出是这样的..
EmpID mon tue wed thu fri 1001 08:00-17:00 7:59-17:02 07:54-17:05 08:00-17:04 07:56-17:03
我有尝试使用此查询..
select cEmpID,dDate, (case DAYOFWEEK(dDate) WHEN 1 then CONCAT(cIn1,' - ',cOut2) else '' End) as 'Mon', (case DAYOFWEEK(dDate) WHEN 2 then CONCAT(cIn1,' - ',cOut2) else '' End) as 'Tue', (case DAYOFWEEK(dDate) WHEN 3 then CONCAT(cIn1,' - ',cOut2) else '' End) as 'Wed', (case DAYOFWEEK(dDate) WHEN 4 then CONCAT(cIn1,' - ',cOut2) else '' End) as 'Thu', (case DAYOFWEEK(dDate) WHEN 5 then CONCAT(cIn1,' - ',cOut2) else '' End) as 'Fri', (case DAYOFWEEK(dDate) WHEN 6 then CONCAT(cIn1,' - ',cOut2) else '' End) as 'Sat', (case DAYOFWEEK(dDate) WHEN 7 then CONCAT(cIn1,' - ',cOut2) else '' End) as 'Sun' from tblattenddetail Where cPeriodID='201702' GROUP BY cEmpID
但它不工作..
你为什么要选择列表中拉dDate当你不希望它到结果? –
检查这个答案,“https:// stackoverflow.com/questions/42408465/need-to-convert-columns-into-rows-in-mysql/42409047#42409047' –
@chiragsatapara,这个查询可以通过使用case只要。不需要在这里使用枢轴。 –