Можно ли вывести результата запроса в линейный список.

PRO

Новичок
Ситуация следующая.
Есть 2 таблицы.
1 - items
id profile
2 profile_params
profile param value

Запрос вида:
SELECT items.id,profile_params.param,profile_params.value FROM items LEFT JOIN profile_params ON profile_params.profile = items.profile

Результат получается:
id | param | value
1 | param1 | value1
1 | param2 | value2
1 | param3 | value3
1 | param4 | value4
....

Хотелось бы сделать чтоб результат был в виде линейного списка, т.е
id | param1 | param2 | param3 | param4 |
1 | value1 | value2 | value3 | value4 |

Пока в голову приходит использовать под запросы в SELECT. Может есть у кого-нибудь идеи такой реализации.

Заранее благодарен.
 

baev

‹°°¬•
Команда форума
google://pivot tables mysql
google://crosstabs mysql
 
  • Like
Реакции: PRO

PRO

Новичок
Ещё вопрос с немного усложнившейся задачей.
2 таблица
2 profile_params
profile section param value

select profile,
max(case param when 'last_name' then value else null end) as last_name,
from profile_params group by profile

Как сделать что-то наподобие:
select profile,
max(case param when 'last_name' then value else null end) as CONCAT(section, '_last_name'),
from profile_params group by profile
 

PRO

Новичок
Для каждой строки определенное название колонки с префиксом.
 

PRO

Новичок
id | section1_param1 | section2_param2 | section3_param3 | section4_param4 |
1 | value1 | value2 | value3 | value4 |
Как-то так.
 
Сверху