我正在制作时间表程序。我想从我的DTR表中提取单个帐户的时间表数据,并将其显示为每周日历。这是我的DTR表的一个例子:
DTR TABLE (select * from DTR where empbio=12934;)
+--------+------------+----------+-----------+
| empbio | dtr_date | dtr_time | in_or_out |
+--------+------------+----------+-----------+
| 12934 | 2016-08-22 | 15:52:21 | 0 |
| 12934 | 2016-08-22 | 15:58:54 | 1 |
| 12934 | 2016-08-22 | 19:20:16 | 1 |
| 12934 | 2016-08-23 | 08:30:51 | 0 |
| 12934 | 2016-08-24 | 07:36:47 | 0 |
| 12934 | 2016-08-24 | 07:48:40 | 0 |
| 12934 | 2016-08-24 | 18:08:55 | 1 |
| 12934 | 2016-08-25 | 08:11:11 | 0 |
| 12934 | 2016-08-25 | 18:23:06 | 1 |
| 12934 | 2016-08-26 | 19:22:46 | 1 |
+--------+------------+----------+-----------+
10 row(s)
0表示登录,1表示注销。如果仔细查看表格,可以在一天内进行多次登录或注销(日期2016-08-22和2016-08-24)。还有一些登录失败的情况(2016-08-26)或退出(2016-08-23)。
我希望使用一个查询将其显示为每周日历。请注意,0和1将替换为IN或OUT。我相信mysql concat函数在组合一行中的多个数据时非常有用。请帮我解决这个问题。
Expected MySQL Query Output
+-------------+---------------+-------------+-------------+-------------+
| 2016-08-22 | 2016-08-23 | 2016-08-24 | 2016-08-25 | 2016-08-26 |
+-------------+---------------+-------------+-------------+-------------+
| 15:52:21 IN | 08:30:51 IN | 07:36:47 IN | 08:11:11 IN | 19:22:46 OUT|
| 15:58:54 OUT| | 07:48:40 IN | 18:23:06 OUT| |
| 19:20:16 OUT| | 18:08:55 OUT| | |
+-------------+---------------+-------------+-------------+-------------+
1 row(s)