Hirdetés
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- eBay-es kütyük kis pénzért
- Luck Dragon: Asszociációs játék. :)
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Lalikiraly: A nagy ő! Stohl...
- sh4d0w: Nyitlocker
- gban: Ingyen kellene, de tegnapra
- Gurulunk, WAZE?!
- MasterDeeJay: Ram gondolatok 2026 január - DDR3-as gép is lehet megoldás? Mi a minimum?
Új hozzászólás Aktív témák
-
nyunyu
félisten
válasz
Prog-Szerv
#5446
üzenetére
Klasszikusan így számolod össze az órákat az összes projektre:
select p.id, p.name, sum(pt.hour) sum_hour
from project p
join project_task pt
on pt.p_id = p.id
group by p.id, p.name;(task tábla tartalma nem ad többlet infót a feladathoz, így azt nem joinoltam feleslegesen a többihez.)
A még nem befejezett projektek kivágására az nem jó, ha beteszel egy where pt.hour>0 feltételt, mert attól még a befejezett részfeladatokat össze fogja adni.
Helyette a komplett project id-t kell kiszűrni, amihez van olyan bejegyzés, ahol a hour = 0:
select p.id, p.name, sum(pt.hour) sum_hour
from project p
join project_task pt
on pt.p_id = p.id
where p.id not in (select p_id from project_task where hour = 0)
group by p.id, p.name;Hány project van, ami teljesen befejeződött?
select count(distinct p.id)
from project p
join project_task pt
on pt.p_id = p.id
where p.id not in (select p_id from project_task where hour = 0);Ide nem kell a fenti group by, mivel most az összes rekordot akarod összeszámolni, és nem projektenként külön-külön.
Új hozzászólás Aktív témák
Hirdetés
- GYÖNYÖRŰ iPhone 15 Pro Max 256GB Natúr Titán - 12 hónap JÓTÁLLÁS - Kártyafüggetlen, 86% Akkumulátor
- Playstation Portal 6 hó garancia, számlával!
- Elektronikai csomag (usb hub, display, hdmi kábelek, riser-ek)
- Endgame Gear & Xtrfy gamer egerek /MZ1/OP1 8K/XM2we/XM1R/XM1 RGB (fehér/fekete/lila)/
- 5G LTE! Microsoft Surface Pro 8 i7-1185G7 16GB 512GB 1 év garancia
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs

