Фильтрация/группировка по уникальному значению свойства битрикс. 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. Это кол-во элементов этой группы.