[QUOTE]Dok_11 пишет:
Есть элементы инфоблока со свойством "Привязка к элементам".
Как с помощью CIBlockElement::GetList вернуть все элементы, у которых количество привязанных элементов равно 1?
[/QUOTE]Штатно никак.
1. Можно пробовать извратится с группировкой по вашему свойству, используя 3 параметр в [url=http://dev.1c-bitrix.ru/api_help/iblock/classes/ciblockelement/getlist.php]ГетЛисте[/url].
Но это поможет лишь определить количество. Дальше обход результата в цикле...
2. Прямой запрос к БД, который вытащит вам нужную инфу.
Оба варианта "нехороши"
Пример SQL для инфоблока 2.0 (свойства в отдельной таблице)
[CODE]select
IBLOCK_ELEMENT_ID, count(*) as CNT
from
b_iblock_element_prop_m5
where
IBLOCK_PROPERTY_ID = 17
GROUP BY IBLOCK_ELEMENT_ID, IBLOCK_PROPERTY_ID
HAVING CNT = 1
ORDER BY CNT DESC
[/CODE]где
b_iblock_element_prop_m5 - таблица, в которой хранятся значения свойств инфоблока
[LIST][*]b_iblock_element_prop_ - название таблицы, [*]m - множественные свойства, [*]5 - идентификатор инфоблока.
[/LIST]IBLOCK_PROPERTY_ID = 17
[LIST][*]17 - идентификатор вашего свойства.
[/LIST]
Есть элементы инфоблока со свойством "Привязка к элементам".
Как с помощью CIBlockElement::GetList вернуть все элементы, у которых количество привязанных элементов равно 1?
[/QUOTE]Штатно никак.
1. Можно пробовать извратится с группировкой по вашему свойству, используя 3 параметр в [url=http://dev.1c-bitrix.ru/api_help/iblock/classes/ciblockelement/getlist.php]ГетЛисте[/url].
Но это поможет лишь определить количество. Дальше обход результата в цикле...
2. Прямой запрос к БД, который вытащит вам нужную инфу.
Оба варианта "нехороши"
Пример SQL для инфоблока 2.0 (свойства в отдельной таблице)
[CODE]select
IBLOCK_ELEMENT_ID, count(*) as CNT
from
b_iblock_element_prop_m5
where
IBLOCK_PROPERTY_ID = 17
GROUP BY IBLOCK_ELEMENT_ID, IBLOCK_PROPERTY_ID
HAVING CNT = 1
ORDER BY CNT DESC
[/CODE]где
b_iblock_element_prop_m5 - таблица, в которой хранятся значения свойств инфоблока
[LIST][*]b_iblock_element_prop_ - название таблицы, [*]m - множественные свойства, [*]5 - идентификатор инфоблока.
[/LIST]IBLOCK_PROPERTY_ID = 17
[LIST][*]17 - идентификатор вашего свойства.
[/LIST]