У меня есть следующая таблица (назовем его просто table
):Как вычислить количество условием
id name value group_id
PK varchar(32) integer integer
Теперь мне нужно написать запрос, который возвращает меня SUM(value)
, сгруппированные по group_id
и COUNT(name)
где name like '%me%'
(Мне не нужно просто вычислять граф, сгруппированный по group_id
, мне нужно вычислить, что счетчик удовлетворяет условию).
Но, мне нужно сделать это без написания подзапросов, и я ограничусь 9.2. Я склонен писать настраиваемую агрегированную функцию, специфичную для этих потребностей. Будет ли это правильным решением?
Прохладный, спасибо, но что, если я в 9.2? Должен ли я писать пользовательские аггрегаты? –
@ St.Antario: см. Мое редактирование (или обновление до текущей версии;)) –
Получил это. У меня есть еще один вопрос, который напрямую не касается темы. Должны ли мы избегать написания пользовательских агрегатов? Я просто попытался найти случай, когда они были бы полезны, но не удалось ... –