Я борюсь с составлением оператора select
в T- SQL, который генерирует таблицу, имена столбцов которой представляют значение столбца исходной таблицы (FieldName
) и записи со значениями, которые находятся в столбце ( FieldValue
) и сгруппированы по внешнему ключу (RegistrationId
).
Я нашел много примеров с похожими проблемами, и я удивлен, что не смог найти правильное решение, так как мне кажется, очень распространенная ситуация.
|RegistrationID |FieldName|FieldValue |
+------------------+---------+-----------------------+
|Guid1 |firstname|john |
|Guid1 |lastname |johnson |
|Guid1 |email |john.johnson@mail.com |
|Guid2 |firstname|mary |
|Guid2 |lastname |williams |
|Guid2 |email |mary.williams@mail.com |
|Guid3 |firstname|james |
|Guid3 |lastname |miller |
|Guid3 |email |james.miller@mail.com |
|Guid4 |firstname|patricia |
|Guid4 |lastname |jones |
|Guid4 |email |patricia.jones@mail.com|
Результирующая таблица
|RegistrationID |firstname|lastname |email |
+------------------+---------+------------------+------------------------+
|Guid1 |john |johnson |john.johnson@mail.com |
|Guid2 |mary |williams |mary.williams@mail.com |
|Guid3 |james |miller |james.miller@mail.com |
|Guid4 |patricia |jones |patricia.jones@mail.com |
Я пытался использовать операторы сводок и падежей, но результат был далеко не удовлетворительным.
Любое руководство высоко ценится
PS. имена генерируются случайным образом, поэтому любая ссылка на реальных людей является случайным совпадением.