为多行其他列显示一列的单个值

时间:2014-08-11 13:14:44

标签: sql mysqli

我有一个SQL查询,可以显示我的数据结果。

date emp_id emp_name spent_hours

19-08-2013 1024 jack 10

19-08-2013 1024 jack 11

19-08-2013 1024 jack 09

19-08-2013 1024 jack 08

19-08-2013 1024 jack 11

但是,我想显示如下。

date emp_id emp_name spent_hours

19-08-2013 1024 jack 10

                  11

                  09

                  08

                  11

有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

通常情况下,表示层是进行您想要的输出整形的最佳位置,但话虽如此,您可以将基本查询的输出放入临时表并将其操作到您的心脏内容。

以下是使用临时表的示例:

SQL Fiddle, temporary table

临时表的主要值是它可以使用auto_increment来保留基本查询的顺序。另一种选择是将基本查询放入派生表中。在示例中,您需要替换查询

SELECT *, @row_num_[xy] := @row_num_[xy]+1 as row_num
FROM Output
ORDER BY row_id 

使用基本查询,使row_num生成保持不变。

SQL Fiddle, derived table