Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MYSQL-Sortierung mit Doktrin

Sie können ORDER BY nicht einfach aufzählen Direktiven zur Lehre. Sie können ein einzelnes ->orderBy() angeben Methodenaufruf, der das zu verwendende Feld und die Richtung angibt (optional, ASC ist Standard) als Argumente, und weitere Bestellfelder müssen mit addOrderBy hinzugefügt werden Methode. Ihre Abfrage sollte wie folgt aussehen

$query->select("sp")
    ->from("CoreBundle:ServiceProvider","sp")
    ->andWhere("sp.city = :city_name")->setParameter("city_name",$cityName)
    ->innerJoin("sp.offers","offer")
    ->innerJoin("offer.service","service","with","offer.service = service")
    ->orderBy("sp.points", "DESC")
    ->addOrderBy("sp.name", "ASC")
    ->addOrderBy("service.points");

Siehe die Dokumentation zu diesem Thema.