Muhammad Waseem
Muhammad Waseem

Reputation: 85

Get values of one field on the basis of filter

Name Pay Status

Abc 123 1

Abc 456 0

Abc 852 1

I want to get result :

ABC,1431(Sum Of Pay), 975(Sum Of Pay on the basis on Status where Status is 1)

Select sum(Pay),CASE WHEN Status=1 THEN SUM(Pay)
From Table
Group by Pay,Status

Upvotes: 1

Views: 46

Answers (2)

Pரதீப்
Pரதீப்

Reputation: 93764

Just use Sum use outside the case statement and also remove pay and status from group by instead add name which makes sense

SELECT Name,
       Sum(Pay),
       Sum(CASE WHEN Status = 1 THEN Pay END)
FROM   Table
GROUP  BY Name

Upvotes: 2

Matt
Matt

Reputation: 15061

SELECT Name, SUM(Pay), SUM(CASE WHEN Status = 1 THEN Pay END)
FROM Table
GROUP BY Name

Upvotes: 1

Related Questions