Задать вопрос
FitTech
@FitTech

Как получить 3 разных записи с одного поля?

Есть таблицы:
table1
id, name, type, value
1 name1 type1 1
1 name1 type2 2
1 name1 type3 3
2 name2 type2 2
3 name3 type3 3

Как мне в запросе получить данные таким образом?
id, name, type1, type2,type3
1 name1 1 2 3
2 name2 null 2 null
  • Вопрос задан
  • 185 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Python-разработчик
    10 месяцев
    Далее
  • ProductStar
    Профессия: Java-разработчик
    9 месяцев
    Далее
  • GB (GeekBrains)
    Профессия Python-разработчик
    10 месяцев
    Далее
Решения вопроса 1
Flashter
@Flashter
Учусь программировать
MySQL GROUP_CONCAT() function returns a string with concatenated non-NULL value from a group.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
madmages
@madmages
Человек прямоходящий
SELECT t1.id,t1.name,t1.type AS type1,t2.type AS type2,t3.type AS type3 FROM table1 t1 LEFT JOIN table1 t2 ON t1.id=t2.id LEFT JOIN table1 t3 ON t1.id=t2.id 
UNION
SELECT t1.id,t1.name,t1.type AS type1,t2.type AS type2,t3.type AS type3 FROM table1 t3 LEFT JOIN table1 t1 ON t1.id=t2.id LEFT JOIN table1 t2 ON t1.id=t2.id
UNION
SELECT t1.id,t1.name,t1.type AS type1,t2.type AS type2,t3.type AS type3 FROM table1 t2 LEFT JOIN table1 t3 ON t1.id=t2.id LEFT JOIN table1 t1 ON t1.id=t2.id


около так
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы