Подтвердить что ты не робот

Согласование всех значений в разделе IN

Есть ли способ обеспечить соответствие всех значений в предложении IN?

Пример:

Я могу использовать IN как: IN (5,6,7,8).

Мне нужно, чтобы он работал как AND через несколько строк.

UPDATE: Мне нужно это, чтобы перечислять компании из db, которые соответствуют указанным параметрам. Компании и таксономия МНОГИЕ МНОГИЕ отношения. Я использую структуру Yii. И это код моего контроллера:

public function actionFilters($list)
{
    $companies = new CActiveDataProvider('Company', array(
        'criteria' => array(
            'condition'=> 'type=0',
            'together' => true,
            'order'=> 'rating DESC',
            'with'=>array(
            'taxonomy'=>array(
                'condition'=>'term_id IN ('.$list.')',
                )
            ),
        ),
    ));
    $this->render('index', array(
        'companies'=>$companies,
    ));
}
4b9b3361

Ответ 1

Вы можете сделать что-то вроде этого:

select ItemID
from ItemCategory
where CategoryID in (5,6,7,8) 
group by ItemID
having count(distinct CategoryID) = 4 <--this number is # of unique items in IN clause

Если вы предоставите свою схему и некоторые примеры данных, я могу предоставить более релевантный ответ.

Пример скрипта SQL

Ответ 2

 SELECT ItemID
     FROM ItemCategory
        WHERE (
               (CategoryID = 5) OR 
               (CategoryID = 6) OR 
               (CategoryID = 7) OR 
               (CategoryID = 8)
              )
     GROUP BY ItemID
 HAVING COUNT(CategoryID) = 4