no, ak som to ja dobre pochopil, tak potrebujes sice ziskat vypis podla stlpca "nazov" v "data", ale zaroven nechces zratavat/nasobit mnozstva v "polozky".
takze ja tam nasjkor urobim join z "polozky" (to je 2. az 6. riadok, teda ten vnutorny select v zatvorkach) a k tomu priradim prislusne previazane zaznamy z data, ktore uz mozem skumulovat/scitat (to je ten sum(a.skutecne)).
a min(b.pozadavek) mi zabezpeci, ze tieto hodnoty pri zgrupovani nebude zratavat, ale da minimalnu hodnotu, ale kedze pre zgrupnute zaznamy je tato hodnota rovnaka, tak minimum z rovnakych hodnot je vzdy len ta hodnota (min z hodnot 20,20,20,20 je vzdy 20). resp. je jedno aku funkciu pouzijem (min, max, avg a pod, ale nie sum).
POZOR - pocitam, ze v tabulke polozky, moze byt kazde ID iba raz, ak som to dobre pochopil. ak nie, teda by sa tam objavilo viac rovnakych ID s roznou hodnotou "pozadavek" , tak to nebude fungovat dobre. tam by bolo treba osetrit, ze co s tou hodnotou "pozadavek" sa ma urobit, teda uz vedome podla potreby pouzit min/max/avg/sum a pod.
a min a sum v prvom riadku su len kvoli group by z posledneho riadku, ktory to vyzaduje, resp. min/max a sum (alebo ine funkcie) pouzijeme podla toho, co potrebujeme ziskat, ci sucet alebo len konkretnu hodnotu (ktora je zase rovnaka/konstantna pre zlucovane zaznamy).
no vidim, ze som stvoril asi este zlozitejsi popis, ako bolo povodne sql...