Agregace plateb/vkladu v NDBT, je to mozne?
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Ja
- Člen | 260
zdary,
slo by v NDBT napsat nejaky takovy dotaz? Je potreba spocitat vklady a platby
jednotlivych uzivatelu a dodat to v ramci jednoho dotazu, aby to prechroustalo
grido. V cistem query by ten dotaz vypadal nejak takto:
<?php
SELECT
f.id_dite,
CONCAT(u.jmeno, " ", u.prijmeni) AS jmeno_cele,
(select SUM(castka) FROM '.self::TABLE_NAME.' WHERE typ = "vklad" && id_dite = f.id_dite && id_skolni_rok = ' . $this->id_skolni_rok . ' LIMIT 1) as vklad,
(select SUM(castka) FROM '.self::TABLE_NAME.' WHERE typ = "platba" && id_dite = f.id_dite && id_skolni_rok = ' . $this->id_skolni_rok . ' LIMIT 1) as platba
FROM '.self::TABLE_NAME.' f
LEFT JOIN uzivatel u ON u.id = f.id_dite
WHERE id_skolni_rok = ' . $this->id_skolni_rok . '
GROUP BY id_dite
?>
- Oli
- Člen | 1215
Ja napsal(a):
Kvuli Grido, query vraci ResultSet a Grido si s nim neporadi
<?php grido doc: setModel: model implementující rozhraní IDataSource nebo DibiFluent, Nette\Database\Table\Selection, Doctrine\ORM\QueryBuilder, Array ?>
Zkus tam teda dat fetchAll();
To implementuje IRow a mohlo by to
skousnout jako array. Nebo fetchAssoc()