There are many questions available, and I explored several such questions in SO, but none helped.
In question - https://stackoverflow.com/questions/1241178/mysql-rows-to-columns/56670844#56670844
In step -3 - They have itemvalue (mine meta_value) as int, but in my case these are varchar, so I cannot really use the sum function.
Database: MySQL
My raw data
umeta_id user_id meta_key meta_value
1 1 nickname kp
2 1 first_name Kumar
3 1 last_name Prasad
4 1 description hello
5 2 nickname rg
6 2 first_name raghav
7 2 last_name gupta
8 2 description welcome
My required selected data
user_id nickname first_name last_name description
1 kp kumar prasad hello
2 rg raghav gupta welcome
My unsuccessful attempt as follows:
SELECT user_id,
case when meta_key='nickname' then meta_value else null end as nickname,
case when meta_key='first_name' then meta_value else null end as first_name,
case when meta_key='last_name' then meta_value else null end as last_name,
case when meta_key='description' then meta_value else null end as description
from user_table GROUP BY user_id;
user_id nickname first_name last_name description
1 kp [NULL] [NULL] [NULL]
2 rg [NULL] [NULL] [NULL]