У меня есть запрос, который извлекает все агенты и их модули, результирующий набор возвращает 1 строку на модуль.SQL Server PIVOT Function
SELECT
am.agentID AS agentid,
pa.agentDisplayName agentdisplayname,
m.ModuleName ModuleName
FROM
AgentModule AS am
JOIN primaryagent AS pa
ON am.agentID = pa.AgentID
JOIN Module AS m
ON am.ModuleID = m.ModuleID
WHERE
m. Active = 1
AND pa.groupID = 75
Dataset является возвращение ниже
agentid | agentdisplayname | modulename 94 | Agent1 | Module 1 94 | Agent1 | Module 2 94 | Agent1 | Module 3 23 | Agent1 | Module 2 23 | Agent1 | Module 3
Я пытаюсь использовать функцию PIVOT, чтобы вернуть таблицу, которая больше напоминает
agentid | agentdisplayname | Module 1 | Module 2 | Module 3 |.. .. .. 94 | Agent1 | 1 | 1 | 1 23 | Agent2 | 0 | 1 | 1
Есть динамический список модулей, так Я не могу записать их в запросе. Я попробовал PICOT, но, похоже, ожидает агрегатную функцию и не совсем уверен, что это то, что мне нужно для этого сценария.