Я хотел бы посчитать элементы массива, которые соответствуют true (посещаемость), false (отсутствие посещаемости) и NULL для любого отдельного события.
РЕДАКТИРОВАТЬ:
Я простоЯ понял, что массивы не ведут себя так, как я думал в pSQL, поэтому простого
userconfirm bool[]
может быть достаточно.Тем не менее, у меня все еще есть проблема с подсчетом значений true / false / null.Я попытаюсь изменить вопрос ниже, чтобы соответствовать этому новому ограничению.Я прошу прощения за любые ошибки.
У меня есть столбец, такой как
userconfirm bool[]
Где userconfirm[314] = true
будет означать, что пользователь # 314 будет присутствовать.(false = нет посещений, NULL = не читается и т. д.).
Я не уверен, что это лучшее решение для этой функции (пользователи объявляют о своем посещении мероприятия), но у меня возникли проблемы сагрегатная функция в этом столбце.
select count(*) from foo where id = 6 AND true = ANY (userconfirm);
Это возвращает только 1, и попытка "подсчета массивов" в Google не дает ничего полезного.
Как бы я посчитал различные значениядля одного мероприятия?