Каждый месяц я собираю данные в таблице wp_reports. Например, я собираю социальные медиа статистику, что дает таблицу как:Mysql: return row as columns
------------------------------------------
month | facebook | twitter | linkedin || <-column names
------------------------------------------
Jan 16 | 100 | 200 | 300 || <- row values
Feb 16 | 102 | 202 | 302
, который является большим, чтобы проследить эволюцию нашего КПЭ, месяц за месяцем.
Однако теперь я мог бы отображать данные, относящиеся к последнему месяцу. У меня есть библиотека, которая генерирует круговую диаграмму из запроса SQL.
Я хотел бы результат моего запроса как:
-----------
label | value
-------------
Facebook | 102
Twitter | 202
LinkedIN | 302
Это сделало бы всю мою страницу работы.
Проблема в том, что я не могу найти правильный запрос.
У меня есть следующий один, который retrives имен столбцов в качестве меток:
SELECT
CASE
WHEN column_name = 'twitter' THEN 'Twitter'
WHEN column_name = 'linkedin' THEN 'LinkedIn'
ELSE 'Facebook'
END
as label
FROM information_schema.columns
WHERE table_name='wp_report' AND column_name IN ('facebook', 'twitter', 'linkedin')
Теперь я хотел бы знать, как объединить его с колонкой под названием «значение», который будет содержать номер соответствия.
Если бы я мог закрутить результат следующего запроса в столбце под названием «Значение», что было бы здорово:
'SELECT newsletter, facebook, twitter, gplus, linkedin FROM wp_report ORDER BY date DESC LIMIT 1'
Спасибо за вашу помощь.
См нормализации. Таблица базы данных НЕ является таблицей. – Strawberry
Приветствия! Я тоже использовал это: http://stackoverflow.com/questions/16359345/transposing-dynamic-columns-to-rows –