я рефакторинг довольно древней кодовой базы расширения TYPO3 от pibase до extbase. одна часть состоит в том, чтобы переработать старый подход MySQL из
$GLOBALS["TYPO3_DB"]->sql_query("...")
до
$queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable('...');
У меня такой запрос, и я не знаю, как это сделать с помощью построителя запросов, и я не нашел что-то в документации
SELECT * FROM $this->db_name.Profs WHERE (REPLACE(RelatedUser, ' ', '-') = '" . ($this->tOnly($name)) . "' OR REPLACE(RelatedUser, ' ', '-') = '" . ($this->tOnly($pre)) . "') AND ((ID NOT IN (" . implode(',', $exclude_ids) . ")) AND ID NOT IN (" . implode(',', $this->locked) . ")) LIMIT 1
каждая часть понятна, как обрабатывать, кроме функции REPLACE - она принимает значение заданной строки и манипулирует этим на лету для сравнения.
любая помощь очень ценится.