Nette/Database, jak udělat SUM sloupečku

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
kloban
Člen | 123
+
0
-

Ahoj podařilo se mi sesmolit dotaz, který spojí tři tabulky a vypíše mě název, id a cenu jídla u objednávky s id 28. Dále bych potřeboval získat SUMu těchto cen. Můžete mi poradit jak na to?
Vím že je na se to dělá pomocí

->sum('cena');

ale podařilo se mi to jen u jedoduchého dotazu, ale nevím jak na to tady když jsou tam ty foreache.

Díky za reakce.

foreach ($this->database->table('jidelniListek') as $jidlo) {
	foreach ($jidlo->related('objednavka_jidelniListek')->where('id_objednavka', '28') as $spoj) {
		echo($jidlo->nazev);
		echo(", ");
		echo($spoj->objednavka->id);
		echo(", ");
		echo($jidlo->cena);
		echo("<br>");
	}
	echo("<hr>");
}

ERD je zde:

erd
japlavaren
Člen | 404
+
0
-

ahoj, nad selection mozes volat ->select(„SUM(table.col_name) AS suma“) to by to mohlo pomoct

kloban
Člen | 123
+
0
-

No já když nad tím tak teď přemšlím, tak asi nechápu k čemu složí

->related()

a

->ref()

Můžete mi to prosím někdo jednoduše vysvětlit. Díky

David Matějka
Moderator | 6445
+
0
-

koukni do anglicky dokumentace https://doc.nette.org/…ase/explorer, tam je to vysvetleny lepe, nez v cz