mysql - ORDER BY Count(p.id) is it possible? -


i have following query:

$querybuilder = $em->createquerybuilder()->select('s')                 ->from("mainbundle:style", 's')                 ->select('distinct s')                 ->leftjoin('s.picturestyle', 'ps')                 ->leftjoin('ps.picture', 'p')                 ->leftjoin('p.category', 'pc');          if ($category instanceof instagramtopcategory)         {             $querybuilder->leftjoin('pc.picturetopcategory', 'category');         }         else if ($category instanceof instagramfirstlevelcategory)         {             $querybuilder->leftjoin('pc.picturefirstlevelcategory', 'category');         }         else if ($category instanceof instagramsecondlevelcategory)         {             $querybuilder->leftjoin('pc.picturesecondlevelcategory', 'category');         }          $query = $querybuilder->where('category = :category')                 ->andwhere('p.islocked = 0')                 ->andwhere('p.deletedat null')                 ->orderby('count(p.id)', 'desc')                 ->groupby('ps.picturestyle')                 ->setparameter('category', $category)                 ->setmaxresults(10)                 ->getquery(); 

however in order by, doesn't gives me error of:

 error: expected end of string, got '(' 

how possible? wrote equivalent query in mysql using count directly in orderby , worked fine, issue in doctrine?

edit: 100% sure it's order since if remove line error goes away

modify query follows

$querybuilder = $em->createquerybuilder()     ->select('s')     ->from("mainbundle:style", 's')     ->select('distinct s')     ->addselect('count(p.id) hidden c_id')    [...]     ->orderby('c_id', 'desc')    [...] 

Comments

Popular posts from this blog

javascript - How to synchronize the Three.js and HTML/SVG coordinate systems (especially w.r.t. the y-axis)? -

javascript - How do I find how many occurences are there of a highlighted string, and which occurence is it? -

java - Reading data from multiple zip files and combining them to one -