Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Как выбрать элемент по свойствам

00 голосов
2
Добого времени суток. Возник такой вопрос - имеется один инфоблок в котором лежат элементы. У каждого элемента есть несколько свойств(привязаны к элементам другого инфоблока в виде списка). Таким образом мне нужно выбрать из таблицы b_iblock_element_property все id элементов у которых свойства совпадают. Пока ничего кроме цикличного перебора ничего не придумал. Может кто нибудь дать совет?
P.S. Я понимаю что вопрос всё таки больше по работе с Бд но всё же)). База - Mysql
спросил 21 Апр, 14 от BAGIRA (560 баллов)

2 Ответы

00 голосов
Пока остановился на
Код
$strSql2 = "SELECT DISTINCT IBLOCK_ELEMENT_ID FROM b_iblock_element_property WHERE 
IBLOCK_PROPERTY_ID = 411 AND VALUE = '".IntVal($_POST['size'])."' AND IBLOCK_ELEMENT_ID = '".$arRes["IBLOCK_ELEMENT_ID"]."'

OR IBLOCK_PROPERTY_ID = 409 AND VALUE = '".IntVal($_POST['opacity'])."' AND IBLOCK_ELEMENT_ID = '".$arRes["IBLOCK_ELEMENT_ID"]."'

OR IBLOCK_PROPERTY_ID = 418 AND VALUE = '".IntVal($_POST['tok'])."' AND IBLOCK_ELEMENT_ID = '".$arRes["IBLOCK_ELEMENT_ID"]."'";

Выборка происходит но выбираются все условия как и задано параметром OR. То есть элементы выбираются даже если их свойства не перекрещиваются а совершенно противоположны(((
ответил 03 Дек, 14 от BAGIRA (560 баллов)
00 голосов
Сформулируйте задачу простым языком, а не на уровне запросов в БД и почему не воспользоваться CIBlockElement::GetList()?
ответил 27 Март, 15 от Almarea (3,760 баллов)

Похожие вопросы

0 голосов
4 ответов
0 голосов
2 ответов
0 голосов
7 ответов
спросил 24 Авг, 13 от Vidoc (120 баллов)
0 голосов
9 ответов
0 голосов
1 ответ
спросил 20 Июль, 15 от Rattlesneyk (140 баллов)