Как заголовок, я изо всех сил пытаюсь получить правильную версию DQL (или корреспондентский построитель запросов) SQL-запроса.Эквивалентный SQL-запрос в DQL с отношением ManyToMany с таблицей join
Есть таблицы, участвующие: SQL Graphic Schema
мне нужно retrive, для каждого заказанного продукта по идентификатору, его изображений по заказу «Орды».
Это правильный запрос в SQL (надеюсь, btw it works: P).
SELECT
PG.product_id,
PIJG.img_id,
PI.uri,
PI.ord
FROM
ProductGeneral PG
JOIN
ProductImgJoinGeneral PIJG ON PG.product_id = PIJG.product_id
JOIN
ProductImg PI ON PIJG.img_id = PI.img_id
ORDER BY
PG.product_id ASC,
PI.ord ASC;
и эти Сущности (а только отношения):
class ProductGeneral {
//all the standard columns are omitted
/**
* @var \Doctrine\Common\Collections\Collection
* @ORM\ManyToMany(targetEntity="AppBundle\Entity\ProductImg", inversedBy="product")
* @ORM\JoinTable(name="productImgJoinGeneral",
* joinColumns={
* @ORM\JoinColumn(name="product_id", referencedColumnName="product_id")
* },
* inverseJoinColumns={
* @ORM\JoinColumn(name="img_id", referencedColumnName="img_id")
* }
*)
*/
private $img;
}
class ProductImg {
//all the standard columns are omitted
/**
* @var \Doctrine\Common\Collections\Collection
* @ORM\ManyToMany(targetEntity="AppBundle\Entity\ProductGeneral", mappedBy="img")
*/
private $product;
}
Любая помощь?
PERFECT! Черт, я был так близок! Спасибо, что сделал мой день! – giacomoto