Я искал различные вопросы, но не нашел ответа. У меня есть MySQL таблицы 'команды':MySQL - Объедините строки в один
+--+----+------+
|id|name|active|
+--+----+------+
|1 |bla |1 |
|2 |blu |0 |
|3 |croc|1 |
|4 |bold|1 |
|5 |foo |1 |
|6 |bar |0 |
+--+----+------+
и таблицы 'данные':
+----+-------+----+
|team|project|time|
+----+-------+----+
|2 |some |1 |
|2 |some2 |5 |
|3 |one |16 |
|3 |one2 |100 |
|5 |more |2 |
|5 |more2 |60 |
+----+-------+----+
В PHP я запрашивая данные, как это:
SELECT t.name, t.active, d.time
FROM teams t
RIGHT JOIN data d ON (t.id = d.team)
ORDER BY t.id
Everything и мой результат выглядит следующим образом:
+----+------+----+
|name|active|time|
+----+------+----+
|blu |0 |1 |
|blu |0 |5 |
|croc|1 |16 |
|croc|1 |100 |
|foo |1 |2 |
|foo |1 |60 |
+----+------+----+
... но я хочу, чтобы мой результат выглядит следующим образом:
+----+------+---+---+
|name|active|t1 |t2 |
+----+------+---+---+
|blu |0 |1 |5 |
|croc|1 |16 |100|
|foo |1 |2 |60 |
+----+------+---+---+
Итак ... Как я могу достичь этого? Я надеюсь, что я не упускать из виду уже задаваемый вопрос ... :(
Большое спасибо
EDIT: Во-первых, спасибо всем, но я что-то забыл ... Это также возможно, что, например, One2 не существует ...
вы не знаете. вы хотите, что в принципе сводная таблица, которую mysql не поддерживает. Сделайте это преобразование в своем коде клиента. Это ** МОЖЕТ быть ** написано в sql, но оно становится ОЧЕНЬ уродливым, ОЧЕНЬ быстрым. –
[Основы оснований таблиц: строки в столбцы] (http://www.artfulsoftware.com/infotree/qrytip.php?id=78), хотя мне бы пришлось согласиться с @MarcB: это может стать беспорядочным! –