- Melyik tápegységet vegyem?
- Milyen processzort vegyek?
- Mini-ITX
- AMD Navi Radeon™ RX 9xxx sorozat
- Milyen egeret válasszak?
- Gaming notebook topik
- Nagyon erős ajánlattá kezd válni a SteamOS
- Sony MILC fényképezőgépcsalád
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Nvidia GPU-k jövője - amit tudni vélünk
Ú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
- Samsung Galaxy S25 Plus Navy 12/256 GB Újszerű, karcmentes állapotban!
- AKCIÓ! ASUS Z97-A Z97 chipset alaplap garanciával hibátlan működéssel
- Bomba ár! Dell Latitude 3550 - i5-5GEN I 4GB I 500GB I 15,6" HD I HDMI I Cam I W10 I Garancia!
- Eredeti DELL 240W töltők (LA240PM160)
- Oppo Reno7 5G 256GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest