sql >> Base de Datos >  >> RDS >> Mysql

Cómo ORDENAR POR CASO en Doctrine2 (Symfony2)

Si está utilizando createQueryBuilder, puede usar como

$query->addSelect("(CASE WHEN name like 'John %' THEN 0
           WHEN name like 'John%' THEN 1
           WHEN name like '% John%' THEN 2
           ELSE 3 END) AS HIDDEN ORD ");
$query->orderBy('ORD', 'DESC');

Tenga en cuenta que debe tener "OCULTO".

También puede hacerlo con la consulta nativa de la doctrina.