Фильтрация/группировка по уникальному значению свойства битрикс. GetList

Не так давно была необходимость выбрать записи из инфоблока по уникальному значению свойства инфоблока.

Для решения этой задачи необходимо воспользоваться встроенным функционалом группировки битрикса. Для этого методам передается параметр arGroupBy. Он не обязательный но очень полезный.

Пример выборки выглядит так:
 
	<?
CModule::IncludeModule("iblock");
$arResult = array();
$arrayFilter = array('IBLOCK_ID' => $Iblock, 'ACTIVE' => 'Y');
$dbItems = CIBlockElement::GetList(array(), $arrayFilter, array('PROPERTY_VOTER'));
while($arItem = $dbItems->GetNext(true, false)) {
$arResult["ITEMS"] = $arItem['PROPERTY_VOTER_VALUE'];
}
?>
Была задача выбрать все уникальные значения из таблицы голосовавших по уникальному значению. Каждый пользователь мог голосовать за несколько кандидатов. Необходим был результирующих массив посетивших голосование.

Так же эта методика помогает посчитать элементы. Т.к. они группируются их легко сосчитать. В массиве элемента передается значение CNT. Это кол-во элементов этой группы.

Возврат к списку