Есть таблица с квартирами и у каждой квартиры есть удобства. Удобства разные и разное количество их. Мне надо выбрать только те квартиры в которых есть определенный список удобств. Т.е. мне нужно чтобы показались квартиры у которых есть и утюг и стиралка.
$query->innerJoinWith(['equipmentsToApartments' => function ($q) {
$q->andWhere(['IN', 'equipment_id' ,[2, 10]]);
return $q;
}]);
такой код работает. Но получается, выбираются квартиры у которых есть или 2, или 10, или 2,10. А мне надо чтобы только 2,10. 'IN' тут получается как OR, а надо AND.
Возможные подходы на "чистом" SQL:
при строго 2 параметрах
SELECT [DISTINCT] t1.id
FROM sourcetable t1
JOIN sourcetable t2
ON t1.id = t2.id
WHERE t1.field = @value1
AND t2.field = @value2
при неопределённом количестве параметров
SELECT id
FROM sourcetable
WHERE field IN (@value1, @value2, ...)
GROUP BY id
HAVING COUNT([DISTINCT] @value) = @count_of_values
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Суть проблемы: есть скрипт огромный, написанный мною, но использующий множество функционала из фремворка CMS(prestashop)Сам по себе процесс работы...
Надо спарситьonion сайт, но используя curl и другие похожие посты ничего не выходит
Есть текстовое поле с именем nicknameИз него значение передается в базу данных
Я хочу разделить данные на 2 столбика в цикле foreachВот моё представление