我使用学说查询生成器来构建我的查询。
$qb = $this->getEntityManager()->createQueryBuilder();
$qb->select(array('u'))->from('Account', 'a');
-- problem here
$qb->where('lower_unaccent(u.email) LIKE :search');
$qb->setParameter('search', $search['search'] . '%');
这很好用,但我也想将 lower_unaccent 函数应用于搜索参数。
有没有办法用查询生成器做到这一点?因为当我这样做时,LOWER_UNACCENT(u.email) LIKE LOWER_UNACCENT(:search)
我收到以下错误:
Error: Expected Doctrine\ORM\Query\Lexer::T_STRING, got 'LOWER_UNACCENT'
即使我将 LOWER_UNACCENT 更改为 LOWER,我也会收到相同的错误消息。