J'ai deux tables; Leads, Territoires et Référents.Comment pivoter dynamiquement
plomb a des colonnes:
ID, Name, TerritoryId
Affluents a:
ID, LeadId, Name
Territoire a:
ID and Name
Un plomb se rapporte toujours à un territoire et un chef de file peut éventuellement se rapporter à un Référent.
Les enregistrements Leads et Referrer sont régulièrement insérés (les référents moins fréquemment). Je veux sortir un rapport dans un GridView qui ressemble à ceci:
Territory | Lead Count | Ref1 Lead Count | Ref2 Lead Count | Ref3 Lead Count Leeds 10 1 7 2 Exeter 43 9 21 8 etc...
OK, donc le problème est, je veux groupe par territoire et le nombre des conducteurs par territoire .... c'est très bien: -
select t.Name, COUNT(1) from Territory t inner join Lead l on l.TerritoryID = t.Id group by t.Name
Mais maintenant, je veux décomposer compte par référent. Je comprends que je peux le faire en partie avec PIVOT, cependant, je comprends que je dois indiquer explicitement les référents dans le code. Est-il possible d'effectuer une sorte de pivot dynamique qui ajoute des colonnes supplémentaires en fonction du nombre de lignes dans Referrer?
Aurais-je besoin d'utiliser SQL dynamique dans un SP?