Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [SF2][SF][Symfony2] Repository class, Dziwny komunikat o błędzie
damianooo
post
Post #1





Grupa: Zarejestrowani
Postów: 496
Pomógł: 2
Dołączył: 15.07.2011
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Witam,

w klasie Repository zrobiłem sobie natywne zapytanie sql wykorzystujące podzapytania w klauzuli FROM :

  1. namespace My\TyperkaBundle\Repository;
  2.  
  3. use Doctrine\ORM\EntityRepository;
  4.  
  5. class TypeRepository extends EntityRepository {
  6.  
  7. public function getSumPointsOnMatchday(){
  8.  
  9. $qb = $this->getEntityManager()->createQuery(
  10. 'SELECT a.suma, a.user_id, a.matchday_id, b.suma_pkt, a.priority
  11. FROM
  12. (
  13. SELECT SUM(t.numberOfPoints) AS suma, u.id AS user_id, u.priority, md.id as matchday_id
  14. FROM MyTyperkaBundle:Type t
  15. JOIN CommonUserBundle:User u
  16. JOIN MyTyperkaBundle:Match m
  17. JOIN MyTyperkaBundle:Matchday md
  18. WHERE md.id BETWEEN 1 AND 15
  19. GROUP BY u.username, md.id
  20. ) a
  21. ,
  22. (
  23. SELECT SUM(t.numberOfPoints) AS suma_pkt, u.id AS user_id, u.priority
  24. FROM MyTyperkaBundle:Type t
  25. JOIN CommonUserBundle:User u
  26. JOIN MyTyperkaBundle:Match m
  27. JOIN MyTyperkaBundle:Matchday md
  28. WHERE md.id BETWEEN 1 AND 15
  29. GROUP BY u.username
  30. ) b
  31. WHERE a.user_id = b.user_id
  32. ORDER BY 4 desc,5,3'
  33. );
  34.  
  35. $result = $qb->getResult();
  36.  
  37. return $result;
  38.  
  39. }



Niestety otrzymuję następujący błąd:

  1. [Semantical Error] line 0, col 99 near '(
  2. ': Error: Class '(' is not defined.



Czy to wynika z tego, że w Doctrine jest jakiś problem z tego typu zapytaniami ?
W ogóle o co chodzi w tym błędzie ?

Ten post edytował damianooo 25.12.2015, 14:49:40
Go to the top of the page
+Quote Post
Damonsson
post
Post #2





Grupa: Zarejestrowani
Postów: 2 355
Pomógł: 533
Dołączył: 15.01.2010
Skąd: Bydgoszcz

Ostrzeżenie: (0%)
-----


DQL nie pozwala na tworzenie subselectów dla FROM, użyj zwykłego SQL po prostu.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 02:18