pdotools where SQL_OR
Уважаемые, подскажите…
Нужно получить такой sql:
Массив where для pdoTools выглядит так:
Нужно получить такой sql:
AND (
(`Events`.`starton` >= t1 AND `Events`.`starton` < t2)
OR
( `Events`.`starton` < t1 AND `Events`.`finishedon` > t1 )
)
Массив where для pdoTools выглядит так:
$where[] = array(
array(
'starton:>=' => $t1,
'starton:<' => $t2,
),
array(
'starton:<' => $t1,
'finishedon:>' => $t1,
)
);
и дает соответственно AND (
(`Events`.`starton` >= t1 AND `Events`.`starton` < t2)
AND
( `Events`.`starton` < t1 AND `Events`.`finishedon` > t1 )
)
Как получить OR? Комментарии: 2
Пробуй так:
$where[] = array(
array(
'starton:>=' => $t1,
'starton:<' => $t2,
),
array(
'OR:starton:<' => $t1,
'finishedon:>' => $t1,
)
);
rtfm.modx.com/xpdo/2.x/class-reference/xpdoquery/xpdoquery.where
Блин… Спасибо! Пользовался ведь раньше этими «conjunction», но добавить к первому ключу массива почему-то в голову не пришло…
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.