Conditional Count on a field

前端 未结 8 1826
庸人自扰
庸人自扰 2020-11-28 06:55

If I had a table like this:

jobId, jobName, Priority

Whereby Priority can be an integer between 1 to 5.

Since I would need this que

8条回答
  •  南笙
    南笙 (楼主)
    2020-11-28 07:23

    Using ANSI SQL-92 CASE Statements, you could do something like this (derived table plus case):

     SELECT jobId, jobName, SUM(Priority1)
     AS Priority1, SUM(Priority2) AS
     Priority2, SUM(Priority3) AS
     Priority3, SUM(Priority4) AS
     Priority4,  SUM(Priority5) AS
     Priority5 FROM (
         SELECT jobId, jobName,
         CASE WHEN Priority = 1 THEN 1 ELSE 0 END AS Priority1,
         CASE WHEN Priority = 2 THEN 1 ELSE 0 END AS Priority2,
         CASE WHEN Priority = 3 THEN 1 ELSE 0 END AS Priority3,
         CASE WHEN Priority = 4 THEN 1 ELSE 0 END AS Priority4,
         CASE WHEN Priority = 5 THEN 1 ELSE 0 END AS Priority5
         FROM TableName
    
    
    )
    

提交回复
热议问题