sql >> Database >  >> RDS >> Sqlserver

Hoe te draaien in SQL

Heb je de documentatie gelezen op PIVOT in Microsoft SQL Server 2005?

SELECT CustId, 
  [1] AS Admin,
  [2] AS Manager,
  [3] AS Support,
  [4] AS Assistant
FROM (SELECT c.CustId, r.RoleId
FROM CustomerRoles c JOIN Roles r USING (RoleId)) AS s
PIVOT (
 COUNT(CustId)
 FOR RoleId IN ([1], [2], [3], [4])
) AS pvt
ORDER BY CustId;

Ik heb het bovenstaande niet getest, maar gebaseerd op het document. Dit kan je op weg helpen.

Er lijkt geen manier te zijn om de kolommen dynamisch te genereren. Je moet ze hard-coderen.



  1. de waarde krijgen van een extra draaitabelkolom laravel

  2. Gegevens selecteren van twee verschillende servers in SQL Server

  3. SQLite JSON_VALID()

  4. Is InnoDB (MySQL 5.5.8) de juiste keuze voor rijen van meerdere miljarden?