Как мне присоединиться и выбрать отношение «многие ко многим»?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как мне присоединиться и выбрать отношение «многие ко многим»?

Сообщение Anonymous »

У меня есть таблицы Properties и Features со связью «многие ко многим» PropertiesFeatures (которая содержит их идентификаторы):
Изображение

Когда я выбираю несколько функций (идентификаторы функций) в виде массива, мне нужны все свойства, которые имеют эти функции (свойство) 55 содержит объекты с ID=105 и 115, свойство 58 содержит объекты с ID=105 и 114).

Код: Выделить всё

$features = $this->custom_search['feature']; // $features = ['105', '114']
$features = array_map('intval', $features); // $features = [105, 114]

$query->select('c.id')->from('Properties', 'c');
$query->leftJoin('c', 'PropertiesFeatures', 'f', 'f.property_id = c.id');
$query->andWhere('f.feature_id IN (?)')->setParameter($paramcount++, $features, Connection::PARAM_INT_ARRAY);
Но он выводит все элементы (свойство 55 и свойство 58, которые имеют ID функции = 105 или 114). Мне нужны только те свойства, все идентификаторы которых есть в массиве $features. Он должен отображать только свойство 58.
Что мне нужно изменить в запросе?

Подробнее здесь: https://stackoverflow.com/questions/797 ... y-relation
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»