Mam coś podobnego do poniższej tabeli:SQL - jak przetransponować?
================================================
| Id | UserId | FieldName | FieldValue |
=====+========+===============+================|
| 1 | 100 | Username | John Doe |
|----+--------+---------------+----------------|
| 2 | 100 | Password | pass123! |
|----+--------+---------------+----------------|
| 3 | 102 | Username | Jane |
|----+--------+---------------+----------------|
| 4 | 102 | Password | $ecret |
|----+--------+---------------+----------------|
| 5 | 102 | Email Address | [email protected] |
------------------------------------------------
Potrzebuję kwerendę, która będzie dać mi wynik takiego:
==================================================
| UserId | Username | Password | Email Address |
=========+===========+===========================|
| 100 | John Doe | pass123! | |
|--------+-----------+----------+----------------|
| 102 | Jane | $ecret | [email protected] |
|--------+-----------+----------+----------------|
Zauważ, że wartości w FieldName nie wyłącznie Użytkownik, Hasło i adres e-mail. Mogą to być dowolne wartości zdefiniowane przez użytkownika.
Czy można to zrobić w SQL?
zobaczyć http://stackoverflow.com/questions/649802/how-to-pivot-a-mysql-entity-attribute-value- Schemat dla podobnego pytania. Czy nie jest możliwe obracanie w aplikacji i pozostawienie zapytania prosto do przodu? Jeśli potrzebujesz N atrybutów, będziesz musiał dynamicznie wygenerować zapytanie. –