- iPhone topik
- Nothing Phone (3a) és (3a) Pro - az ügyes meg sasszemű
- Utcakép banánnal: félrecsúszhat a Google Térkép fókusza
- Milyen okostelefont vegyek?
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
- Fotók, videók mobillal
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Kis méret, nagy változás a Motorolánál
- Google Pixel topik
- Megtartotta Európában a 7500 mAh-t az Oppo
Ú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
- Apple iPhone 17 Pro Max 256GB Deep Blue használt, karcmentes 100% akku (52 ciklus) Apple garan
- iPhone 13 128Gb 100%(1év Garancia) - AKCIÓ
- BESZÁMÍTÁS! Palit Gaming Pro RTX 3070 Ti 8GB videokártya garanciával hibátlan működéssel
- Surface 3 - 13,5" 2k érintő, i5 1035G7, Iris Plus, 16GB RAM, SSD, jó akku, újszerű állapot, számla
- Apple iPhone 15 Pro 128GB,Újszerű,Dobozaval12 hónap garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

