此查询工作正常,但看起来多余(也许我错了)。是否存在更好的方法来做到这一点?(我需要所有 4 列以及每一行的总数)
select parz.*, (parz.sessioniSvolte + parz.sessioniPianificate ) as sessioniTotale
from (
select
e.Prefettura AS Prefettura,
count(case when s.Giorno<getDate() then s.idSessione else null end) AS sessioniSvolte,
count(case when s.Giorno>=getDate() then s.idSessione else null end) AS sessioniPianificate
from SESSIONE_FORMAZIONECIVICA s
inner join SEDE_SESSIONECIVICA e ON e.idSede = s.idSede
GROUP BY e.Prefettura
) as parz
我建立了类似的问题,但它们与我的问题不匹配。