MySQL запрос (расширение первичного ключа с двумя переменными / данные поворота) - PullRequest
0 голосов
/ 30 января 2011

Предположим, что в MySQL у меня есть таблица 'data' со столбцами 'x', 'y' и 'value'

data:

x y  value
A D  0.5
A E  0.8
A F  4.2
B D  3.1
C F  1.6

И предположим, что (x, y) - первичный ключ.

Существует ли запрос SELECT, который я могу выполнить так, чтобы получился результат

X   D    E    F
A  0.5  0.8  4.2
B  3.1  n/a  n/a
C  n/a  n/a  1.6

Я буду знать возможные значения 'y ', так что это может быть жестко запрограммировано в запросе (хотя я бы, конечно, предпочел бы его, если бы запрос был более общим).

Спасибо.

1 Ответ

0 голосов
/ 30 января 2011

То, что вы хотите, называется «сводной таблицей».

Хорошее объяснение таблиц Pivot и способов их генерации в MySql можно найти по адресу: http://dev.mysql.com/tech-resources/articles/wizard/index.html

Хотя вам нужен «пользовательский» SQL для указания имен столбцов для вашей сводной таблицы, если вы не знаете их заранее, вы можете использовать SQL для их генерации! Проверьте статью!

...