1
Я пытаюсь использовать PostgreSQL, NOT SIMILAR TO исключить черный список из результатов запроса,Использование PostgreSQL не похожи в Symfony Доктрина построитель запросов
При запуске запроса в моем хранилище метод ниже:
$qb = $this->getEntityManager()->createQueryBuilder('p');
$query = $qb
->select('p')
->from('CRMPiccoBundle:Person', 'p')
->where("lower(p.email) not similar to '(" . implode('|', $blacklist) . ")%'")
->getQuery();
return $query->getResult();
я получаю следующее сообщение об ошибке:
[Doctrine\ORM\Query\QueryException]
SELECT p FROM CRMPiccoBundle:Person p WHERE lower(p.email) not similar to '([email protected]|[email protected]|[email protected]|[email protected]|[email protected])%'
[Doctrine\ORM\Query\QueryException]
[Syntax Error] line 0, col 94: Error: Expected end of string, got 'to'
Однако, когда я запускаю этот запрос к моей локальной D B с PgAdmin он работает.
Как я могу достичь этого с помощью Доктрины, использующей построитель Query Symfony Doctrine Query (или аналогичный)? Я использую PostgreSQL 9.5.5
@crmpicco спасибо за редактирование, я не держать глаз на что, потому что я только писать код без тестирования: D –
Спасибо за ответ, я не сделал подумайте о том, чтобы выстроить «НЕ ТАКИЕ». Это имеет смысл, когда я видел ваш ответ. – crmpicco