Question

Using SQL Server I'm trying to summarize a questionnaire table as follows but am struggling!

I want to show the % of all Questionnaires answered true by month and year.

enter image description here

Can anyone help?

Was it helpful?

Solution

You can do this with conditional aggregation. This method shows conditional use of avg():

select "Year", "Month",
       avg(case when recommend = 'true' then 1.0 else 0.0 end) * 100 as "True %"
from Questionnaire q
group by "Year", "Month"
order by "Year", "Month";

If you actually want the "%" at the end, you need to convert the result to a string and append it.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top