2015-03-31 2 views
0

Я новый Доступ и я создаю запрос для группировки таблицы на основе поля и получения количества записей на основе состояния.Как группировать и подсчитывать на основе условия

Таблица:

Category  Status 
Pen   Open 
Pencil   Open 
Pen   Closed 
Pencil   Closed 

Ищу запрос, который дает мне выход, как показано ниже:

Category  Open  Closed 
Pen   1   1 
Pencil  1   1 

До сих пор я пытался, SELECT, Категория, COUNT (Status = 'Открыть '), Count (Status =' Closed ') FROM table GROUP BY Category; Этот запрос не решает проблему.

ТИА

ответ

1

Один из способов сделать это, чтобы сделать условную агрегацию с использованием sum и iif функции:

select 
    category, 
    sum(iif(status='Open',1,0)) as Open, 
    sum(iif(status='Closed',1,0)) as Closed, 
from table 
group by category 
Смежные вопросы