我正在使用一个功能来获取图库中的下一张照片:
$q = "SELECT i FROM GalleryModule\Image i WHERE i.id = (SELECT MIN(p.id) FROM GalleryModule\Image p WHERE p.id > :id ORDER BY p.position, p.id DESC) WHERE i.gallery = :gallery";
$query = $this->getEntityManager()->createQuery($q);
$query->setMaxResults(1);
$query->setParameters(array(
'id' => $image->getId(),
'gallery' => $image->getGallery()->getId()
));
return $query->getOneOrNullResult();
我仍然面临的错误:
Doctrine\ORM\Query\QueryException
[语法错误]第0行,第143行:错误:字符串的预期结束,得到'WHERE'
提前多多感谢。
答案 0 :(得分:3)
你有多个地方
也许你的意思是:
SELECT i FROM GalleryModule\Image i
WHERE i.id =
(SELECT MIN(p.id)
FROM GalleryModule\Image p
WHERE p.id > :id ORDER BY p.position, p.id DESC)
AND i.gallery = :gallery