У меня есть таблица, которая хранит данные следующим образом:Как сделать PIVOT в SQL Server с динамическими столбцами, значениями и типами данных?
ID ListId ModuleId RecordId NValue CValue LValue Caption RowId 8cb5f604 c07cea6f 24cb218c _01F15T1LJ 2.00000 False Wire # 24cb218c c023fe9e 2dcd56fe 24cb218c _01F15T1LJ Red False Label 24cb218c 4a74bd46 c07cea6f 24cb218c _01F15T1LJ 1.00000 False Wire # 24cb218d 30cae2cf 2dcd56fe 24cb218c _01F15T1LJ White False Label 24cb218d
мне нужно повернуть дату на RowId и отобразить результаты что-то вроде этого:
RowId Wire # Label 24cb218d 1.00000 White 24cb218c 2.00000 Red
Я не могу понять, как заставить PIVOT работать таким образом.
Данные в таблицах, количестве столбцов и порядке открыты для редактирования конечным пользователем. Возможно ли это сделать эффективно? Если да, то каким образом.
Предпочитаю, что у меня будет использовать CASE WHEN, чтобы вытащить правильную колонку в PIVOT? Имеется до 4 столбцов, которые могут содержать значение (в зависимости от типа данных). – davids