2015-07-16 5 views
2

Итак, у меня есть таблица со столбцом, который мне нужно группировать по определенным категориям внутри этого столбца. Например, в колонке есть 20 кодов, которые входят в одну группу под названием Residential и 30 кодов, которые идут в Commercial. Это возможно? Как создать группы, созданные из нескольких разных значений в одних и тех же столбцах?Группа SQL по нескольким группам значений в одном столбце

+0

Лот больше необходимой информации: Ваша модель данных, ваш текущий запрос, возможно, некоторые выборочные данные. –

+0

вы можете использовать [sqlFiddle] (http://sqlfiddle.com/#!6/2cb89/3) для создания вашей схемы. –

+0

Является ли связь между кодами и набором {Residential, Commercial} записана в вашей базе данных? – reaanb

ответ

3

Вы можете использовать case выражение:

SELECT code_group, COUNT(*) 
FROM (SELECT CASE WHEN code IN ('code1', 'code2', 'etc') THEN 'Residential' 
        WHEN code IN ('code3', 'code4') THEN 'Commercial' 
        ELSE NULL 
       END AS code_group 
     FROM . . .) t 
GROUP BY code_group 
+0

Почему выражение case помещено в оператор FROM @Mureinik? – cjones3724

Смежные вопросы