У меня есть следующий сценарий:Найдите сумму суммы между датами
Там есть таблица, которая содержит данные загружено еженедельно и в последний день месяца для каждого клиента и продукта.
Мне нужно получить сумму данных для данных, загруженных в последний день месяца для каждого продукта (допустим), который объединяет его для всех клиентов.
Ввод 2 даты - начало и конец периода, и мне нужно сделать это в одном SQL-запросе.
Ниже приведен запрос, который я использую. Период - это поле даты.
SELECT
Period
,sum([Amount]) as 'Amount'
from tableA
where Period between convert(datetime,'201110'+'01',121) and dateadd(second,-1,dateadd(month,1,convert(datetime,'201201'+'01',121)))
and cond1 = .....
and cond2 = ....
group by
Period
Запрос выше приводит к данным, показанным ниже.
Мне нужно, чтобы узнать сумму в последний день каждого месяца, то есть по одному на 31-Окт-11, 30-Ноя-11, 31-Дек-11 и так далее.
Окончательный результат должен выглядеть, как показано ниже (в отличие от того, что я получаю в настоящее время - выше):
Можете ли вы помочь !!
Мы используем Sql Server 2008 –
Не уверен, что я получу то, как будет выглядеть ваш желаемый результат. Не могли бы вы, например, обновить вопрос. – jpw
Обновлен с желаемым набором результатов. Как уже упоминалось, данные загружаются еженедельно и один раз в конце месяца. Нам нужна сумма суммы за последний день месяца. Диапазон дат может быть распределен в течение нескольких месяцев. (Пожалуйста, см. Образец запроса, который я опубликовал, - он содержит дату, представленную в формате YYYYMM). –