How to ORDER BY CASE in Doctrine2 (Symfony2)
问题 I want to run this query by using Doctrine in Symfony 2.3. But it seems like Doctrine does not understand CASE statement. Can anyone help? Thank you in advance! SELECT max(id) id, name FROM cards WHERE name like '%John%' GROUP BY name ORDER BY CASE WHEN name like 'John %' THEN 0 WHEN name like 'John%' THEN 1 WHEN name like '% John%' THEN 2 ELSE 3 END, name 回答1: If you are using createQueryBuilder then you can use like $query->addSelect("(CASE WHEN name like 'John %' THEN 0 WHEN name like