Válí se ti projekty v šuplíku? Dostaň je mezi lidi a získej cool tričko a body na profi IT kurzy v soutěži ITnetwork summer 2017!
Přidej si svou IT školu do profilu a najdi spolužáky zde na síti :)
Avatar
solta
Člen
Avatar
solta:21. dubna 6:09

Ahoj jak udělám v doctrině toto

SELECT r.*, (SELECT SUM(p.amount) FROM p WHERE p.r_id = r.id ) as pay FROM r WHERE r.is_active=1
 
Odpovědět 21. dubna 6:09
Avatar
Bogdan
Redaktor
Avatar
Odpovídá na solta
Bogdan:21. dubna 9:01

cool

 
Nahoru Odpovědět 21. dubna 9:01
Avatar
Bogdan
Redaktor
Avatar
Odpovídá na Bogdan
Bogdan:21. dubna 9:03

boze. ,proc to furt nejde editovat.... napisu ti to az budu doma

 
Nahoru Odpovědět 21. dubna 9:03
Avatar
solta
Člen
Avatar
Odpovídá na Bogdan
solta:24. dubna 10:11

Prosim muzes mi to poslat

 
Nahoru Odpovědět 24. dubna 10:11
Avatar
Václav Keberdle:25. dubna 18:58

to je v podstate

SELECT r.*, SUM(p.amount) as pay
FROM r
LEFT JOIN p
WHERE r.is_active=1
GROUP BY p.r_id

takže:

$this->createQueryBuilder('r')
            ->select('r, SUM(p.amount) as pay')
            ->leftJoin('r.p', 'p')
            ->where("r.is_active=1")
            ->groupBy('r.r_id')
            ->getQuery()
            ->getResult();
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět  +2 25. dubna 18:58
Avatar
Bogdan
Redaktor
Avatar
Bogdan:26. dubna 11:01

Promiň, až dnes jsem se dostal k PC.
Václav už ti to napsal, jen bych to trochu upravil.

$qb = $this->createQueryBuilder('r');
$qb->select('r, SUM(p.amount) as pay');
$qb->leftJoin('r.p', 'p');
$qb->where("r.is_active = :status");
$qb->groupBy('r.r_id');
$qb->setParameter('status', 1);
//$qb->setParameters(['status' => 1, 'dalsi_parameter' => 'hodnota']) #pokud více parametru
$qb->getQuery()->getResult();
//$qb->getQuery()->useQueryCache(true)->getResult(); #zapnes cachování pro quary
 
Nahoru Odpovědět  +1 26. dubna 11:01
Avatar
solta
Člen
Avatar
Odpovídá na Bogdan
solta:26. dubna 12:49

díky mrknu na to večer

 
Nahoru Odpovědět 26. dubna 12:49
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.