我需要从行值的列。如何根据mysql中的行值拆分列?
我有两张桌子。
表1:working_day包含所有工作日的日期列表。
date
--------
2013-03-30
2013-03-29
2013-03-28
表2:条目包含进出时间每个员工。
id In Out Date
1 9 0 2013-03-30
2 8 0 2013-03-30
3 7 0 2013-03-30
1 8 18 2013-03-29
2 9 16 2013-03-29
3 6 20 2013-03-29
4 12 15 2013-03-29
预期输出:
ID 29-03-2013_IN 29-03-2013_Out 30-03-2013_In
1 8 18 9
2 9 16 8
3 6 20 7
4 12 15 0
尝试:
SELECT id,
Case condition1 for 29_in, // I don't know which condition suite here.
Case condition1 for 29_out,
Case condition1 for 30_in
FROM entry
WHERE DATE
IN (
SELECT *
FROM (
SELECT DATE
FROM working_day
ORDER BY DATE DESC
LIMIT 0 , 2
)a
)
听起来像是你需要一个group by子句,这将让你你需要,只是没有在你指定的格式的结果。 – starshine531
这篇文章有一个很好的howto在MySQL中进行数据透视:http://www.artfulsoftware.com/infotree/qrytip.php?id=78 – koriander