Код: Выделить всё
$where[] = $query->equals('special', 1);
$where[] = $query->equals('region', 7);
$where[] = $query->greaterThan('crdate', $minTime);
Код: Выделить всё
WHERE acos(sin(:lat)*sin(radians(lat)) + cos(:lat)*cos(radians(lat))*cos(radians(lng)-:lng)) * :R < :rad
Чего хотелось бы избежать:
- Использование необработанного admin_query() с $GLOBALS['TYPO3_DB'] со всеми теми же условиями $where, которые я собрал перед методом выполнения() соответствующего запроса, для сбора UID доступных записей и добавьте к $query условие, которое возвращает только те, которые соответствуют UID второго запроса.
- Переписав весь метод репозитория, чтобы использовать raw sql и повторите его, чтобы сгенерировать правильную ER-модель Extbase.
Код: Выделить всё
$query->customSQL('blablabla > bla');
Код: Выделить всё
$query->equals('placeholder', 1);
str_replace('placeholder = 1', ' ...мой настоящий оператор радиуса...')
Но я вижу только getStatement(), а не setStatement() в QueryInterface...
Подробнее здесь: https://stackoverflow.com/questions/427 ... here-parts