php - Doctrine не хватает памяти на join
0
Пишу DQL запрос в Doctrine:
$query = $this->getEntityManager()
->createQuery(SELECT adsLink
FROM CatalogBundle:AdsLink adsLink
JOIN CatalogBundle:Product product
WHERE product.user = :user)
->setParameter(user, $user);
return $query->getResult();
И у меня падает сайт, один раз показало что недостаточно памяти для PDO
Аналогичный запрос на SQL работает мгновенно:
SELECT product_advertising_link.*, products.name, products.user_id
FROM product_advertising_link
JOIN products ON product_advertising_link.product_id = products.id
WHERE products.user_id = 1
Источник
- 69
- 1
- 23 янв 2018 2018-01-23 06:05:30
- Jonny Manowar
А где вы в DQL потеряли условие объединения? Декартово произведение же получили. — Мелкий 23 янв 20182018-01-23 06:37:08.000000
1 ответ
0
Заменил JOIN на WHERE
SELECT adsLink
FROM CatalogBundle:AdsLink adsLink, CatalogBundle:Product product
WHERE adsLink.product = product
AND product.user = :user
- 23 янв 2018 2018-01-23 06:25:01
- Jonny Manowar