Я хочу найти сумму подсчета таблиц в SQL

0

Ниже приведен запрос, который я использую

select cm.city_name,

count(case when k.listing_status_uid=1 then 1 end ) as 'Active',   
count(case when k.listing_status_uid=3 then 1 end ) as 'Bad_listing',  
count(case when k.listing_status_uid=4 then 1 end ) as 'proj_scrapped',  
count(case when k.listing_status_uid=5 then 1 end ) as 'proj_on_hold',  
count(case when k.listing_status_uid=6 then 1 end ) as 'sold_out',  
count(case when k.listing_status_uid=7 then 1 end ) as 'others'

from ksl_listing_master k  
join ksl_locality_master lm on lm.locality_uid=k.listing_locality  
join ksl_city_master cm on cm.city_uid=lm.city_uid  
join ksl_listing_status ls on ls.listing_status_uid=k.listing_status_uid  

group by cm.city_name

Это дает результат, как показано ниже

Изображение 174551

Теперь я хочу получить сумму каждого отдельного столбца. Ниже названий городов должна быть сумма, в которой я хочу получить отдельную сумму Active, Bad_listing, proj_scrapped, proj_on_hold, sold_out и others в том же Query.

  • 0
    Давай, ты уже знаешь, как обеспечить скрипку.
Теги:
heidisql

2 ответа

2
Лучший ответ

Если я правильно понимаю, вам просто нужна сводная строка. Вы можете сделать это с with rollup:

select . . .
group by cm.city_name with rollup;
  • 0
    святая корова! Я делал это в коде после запроса в течение многих лет.
0

Вы, кажется, хотите:

select cm.city_name,
       sum(k.listing_status_uid = 1) as 'Active',   
       sum(k.listing_status_uid = 3) as 'Bad_listing',  
       sum(k.listing_status_uid = 4) as 'proj_scrapped',  
       . . .
       sum(k.listing_status_uid in (1,3,4)) as 'total'
from ksl_listing_master k join 
     ksl_locality_master lm 
     on lm.locality_uid = k.listing_locality join 
     ksl_city_master cm 
     on cm.city_uid=lm.city_uid join 
     ksl_listing_status ls 
     on ls.listing_status_uid = k.listing_status_uid  
group by cm.city_name;
  • 0
    с помощью функции сумм я снова получаю счет. Но я хочу сумму счета, как показано на рисунке

Ещё вопросы

Сообщество Overcoder
Наверх
Меню