【发布时间】:2018-05-02 07:27:00
【问题描述】:
代码:
CREATE TABLE table1 (
day DATE,
name VARCHAR(40)
);
INSERT INTO table1 (day, name)
VALUES
('2018-01-01', 'test1'),
('2018-01-01', 'test2'),
('2018-01-01', 'example'),
('2018-01-01', 'somevalue'),
('2018-01-02', 'test3'),
('2018-01-03', 'test4');
我想将结果拆分为:
day - name1 - name2 - namex
DATE - value - value - value
而不是在我选择数据时复制日期。
预期结果:
day - name - name - name - name ...
2018-01-01 - test1 - test2 - example - somevalue
2018-01-02 - NULL - NULL - NULL - NULL - test3
【问题讨论】:
-
请将示例表数据和预期结果也作为格式化文本提供。
-
由于
name的长度可变,这是不可能的。你应该选择GROUP BY和GROUP_CONCAT。检查这个Fiddle -
认真考虑处理应用代码中数据显示的问题
-
@Strawberry 你的意思是像php这样的另一种语言?
-
我已经编辑了示例表数据。现在向我们展示预期的结果。
标签: mysql sql select sqlfiddle