【发布时间】:2015-06-29 10:55:03
【问题描述】:
我知道这个问题已经被问过几次了,我正在尝试准确地回答公认的答案,但显然我做错了什么,无法获得所需的输出。
我想返回以下格式的数据:
姓名 | 27-06-2015 | 28-06-2015
===== | ========== | ==========
约翰 |早上 6:30 |上午 7 点 30 分
史蒂夫|早上 6:00 |凌晨 4:00
++++++++++++++++++++++++++++++++++++++++++
但是当我运行Fiddle 查询时,我没有在出勤表中获得第二天的任何数据。如果我删除分组,我会得到第二天的数据,但会在结果集中插入一个新行:
姓名 | 27-06-2015 | 28-06-2015
===== | ========== | ==========
约翰 |早上 6:30 |空
约翰 |空 |上午 7 点 30 分
史蒂夫|早上 6:00 |空
史蒂夫|空 |凌晨 4:00
++++++++++++++++++++++++++++++++++++++
我使用的sql是:
SELECT
Name,
case(dropoffdate) when '20150627' then CONCAT(DropoffTime, ' - ', PickupTime) end as '2015-06-27',
case (DropoffDate) when '20150628' then CONCAT(DropoffTime, ' - ', PickupTime) end as '2015-06-28'
FROM
Student s
LEFT OUTER JOIN Attendance a on s.id = a.student
GROUP BY s.id
这里是fiddle link
【问题讨论】:
标签: php mysql pivot-table