Paweł Łaguna

Paweł Łaguna ERP
Administrator/SQL
development

Temat: Wyświetlanie poszczególnych miesięcy z zakresu dat T-SQL.

Hej, mam następujący problem. Mam dwie kolumny DateFrom oraz DateTo. Załóżmy, że pierwszy wiersz to zakres:

DateFrom | DateTo
2017-06-01 00:00:00.000 | 2017-09-30 00:00:00.000

Czyli od 1 czerwca 2017 roku do 30 września 2017. Jak widać powyższy zakres mieści 4 miesiące (czerwiec, lipiec, sierpień, wrzesień). Zapytanie powinno mi zwrócić wynik wyświetlający poszczególne miesiące znajdujące się w tym zakresie tzn.:

Kolumna1
2017-06
2017-07
2017-08
2017-09

Bardzo proszę o pomoc.

konto usunięte

Temat: Wyświetlanie poszczególnych miesięcy z zakresu dat T-SQL.

Paweł Ł.:
Hej, mam następujący problem. Mam dwie kolumny DateFrom oraz DateTo. Załóżmy, że pierwszy wiersz to zakres:

DateFrom | DateTo
2017-06-01 00:00:00.000 | 2017-09-30 00:00:00.000

Czyli od 1 czerwca 2017 roku do 30 września 2017. Jak widać powyższy zakres mieści 4 miesiące (czerwiec, lipiec, sierpień, wrzesień). Zapytanie powinno mi zwrócić wynik wyświetlający poszczególne miesiące znajdujące się w tym zakresie tzn.:

Kolumna1
2017-06
2017-07
2017-08
2017-09

Bardzo proszę o pomoc.

czesc,

tak na szybko


select DATEADD(MONTH, mm.monthnumber, DateFrom) AS MonthName from x
join (
select * from
(
select 0 as monthnumber
union
select 1
union
select 2
union
select 3
union
select 4
union
select 5
) as m) as mm on 1=1
where DATEADD(MONTH, mm.monthnumber, DateFrom) < x.DateTo


przy czym dziala to dla roznic miedzy miesiacmi wynoszacymi 5...

pzdr,
m.Ten post został edytowany przez Autora dnia 19.02.18 o godzinie 11:30
Paweł Łaguna

Paweł Łaguna ERP
Administrator/SQL
development

Temat: Wyświetlanie poszczególnych miesięcy z zakresu dat T-SQL.

Dzięki, napisałem sobie funkcję rozbijające zakres dat na poszczególne miesiące.

Następna dyskusja:

MS SQL Filtrowanie danych n...




Wyślij zaproszenie do