sql >> Database teknologi >  >> RDS >> Sqlserver

SQL Server 2005 udfyld pivottabel med 0'er

Du ville bruge ISNULL() fungere. Se SQL Fiddle

SELECT 'lessonid          response ->'
   , isnull([0], 0) as [0]
  , isnull([1], 0) as [1]
  , isnull([2], 0) as [2]
  , isnull([3], 0) as [3]
  , isnull([4], 0) as [4]
FROM (
    SELECT lessonid AS 'lessonid          response ->'
        ,ISNULL(response,0) as response
        ,count(response) AS respcnt
    FROM tblRChoices
    GROUP BY lessonid
        ,response
    ) TableResponse
PIVOT(SUM(respcnt) FOR response IN (
            [0]
            ,[1]
            ,[2]
            ,[3]
            ,[4]
            )) ResponsePivot



  1. dvale orakelsekvens producerer stort hul

  2. mysql - Indsættelse af række i tabel 1, når specifik række slettes i tabel 2

  3. Konverter dato til månedsnavn og år

  4. Parsing af ekstremt store XML-filer i php