Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Cách xoay trong SQL

Bạn đã đọc tài liệu về PIVOT chưa trong 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;

Tôi đã không thử nghiệm ở trên, nhưng chỉ dựa trên tài liệu. Điều này có thể giúp bạn bắt đầu.

Dường như không có cách nào để tạo các cột một cách động. Bạn phải mã hóa chúng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 6 Hàm lấy Ngày, Tháng và Năm từ một Ngày trong SQL Server

  2. Cách loại bỏ Ràng buộc trong SQL Server (T-SQL)

  3. Thực thi Truy vấn động với go in sql

  4. Datetime trong mệnh đề where

  5. Lưu trữ dữ liệu không theo thứ tự bảng chữ cái