Tenho um relatório onde preciso somar os totais de uma coluna e agrupá-los por empresa selecionada. Eu tenho que fazer isso no T-SQL por 4 intervalos: 0-3 meses, 3-6 meses, 6-12 meses, > 12 meses Estou confuso sobre como isso seria implementado no T-SQL. Há uma coluna de saldo na qual tenho que totalizar. O problema que não consigo entender é o resumo desses intervalos de datas. Como isso pode ser feito em T-SQL?
O usuário deve inserir a escolha da empresa e uma data e, com base nela, devo gerar o resumo da coluna de saldo dentro dos intervalos especificados, que foram 0-3 meses, 3-6 meses, 6-12 meses,> 12 meses
Estou pensando desta forma: Estou pensando desta forma: Faça intervalos de datas, então: suponha que @date seja a data selecionada pelo usuário então:
DECLARE @daterange1start DATE = @date
DECLARE @daterange1end DATE = (SELECT DATEADD(m,3,@daterange1start))
DECLARE @daterange2start DATE = @daterange1end
DECLARE @daterange2end DATE = (SELECT DATEADD(m,3,@daterange2start))
DECLARE @daterange3start DATE = @daterange2end
DECLARE @daterange3end DATE = (SELECT DATEADD(m,6,@daterange3start)) '
E então usando o caso
SUM (CASE WHEN dueDate BETWEEN @daterange1start AND @daterange1end THEN Balance ELSE 0 END) AS '0-3 Months',
SUM (CASE WHEN dueDate BETWEEN @daterange2start AND @daterange2end THEN Balance ELSE 0 END) AS '3-6 Months',
SUM (CASE WHEN dueDate BETWEEN @daterange3start AND @daterange3end THEN Balance ELSE 0 END) AS '6-12 Months''
Estou pensando da maneira certa em termos de uma solução correta?
Obrigada.
Você pode categorizar seus
dueDate
valores e usar o PIVOT assim: