我想要获取列表用户并且当前用户每次都必须是第一个。 在 MySql 中我可以做成:
SELECT * FROM `user` ORDER BY id = 2 DESC
在 Doctrine 中我尝试 make alike:
$query = $this->_em->createQuery("SELECT bul, u, c FROM 'Building\Entity\BuildingUserLink' bul JOIN bul.building b JOIN bul.company c JOIN bul.user u WHERE b = :building_id ORDER BY u.id = :current_id DESC");
$query->setParameters(array('building_id' => $building_id, 'current_id' => $current_id));
return $query->getResult();
但我得到错误 - “预期的字符串结束,得到\u0027=\u0027\”
我有什么错?
PS 我用的是 ZF2+DOctrine
最佳答案
SELECT * FROM `user` ORDER BY id = 2 DESC, id DESC
在您的实际查询中:
ORDER BY u.id = :current_id DESC, u.id DESC
关于php - 按 id=1 排序的学说,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21530784/