Eu quero dividir um determinado ano em determinado número de partes do intervalo de datas usando SQL. Os seguintes pontos precisam ser considerados ao dividi-lo:
Um determinado ano sempre começará em 01-01 e terminará em 12-31 e deve ser dividido em um determinado número de peças com base em meses. Por exemplo:
year SplitCount output 2019 2 2019-01-01 2019-07-01 2019 3 2019-01-01 2019-05-01 2019-09-01
- Se o usuário pedir para dividir determinado ano em 12 partes, ele deve dividir o ano inteiro em 12 meses.
- Se o usuário pedir para dividir um determinado ano mais de 12 peças, ele deve dividi-lo em semanas
Por favor sugira.
Tente isso:. Ele usa DateFromParts(year, month, 1) para encontrar o mês correto para qualquer valor 1..12 ou usa DateAdd(week, date) para calcular qualquer valor 13..52. Dessa forma, deixamos o mecanismo de banco de dados se preocupar com coisas irritantes como ano bissexto para nós, em vez de fazer esse tipo de matemática por conta própria.
este
Dá:
este
Dá:
este
Dá: