Boa tarde amigos, recentemente me pediram para disponibilizar um script que encontre apenas os dias da semana entre duas datas. Acredito que a pessoa estava querendo alguma coisa com os dias úteis.
Questionei sobre os feriados durante a semana, mas mesmo assim insistiu na idéia dos dias da semana. Ok, então vou disponibilizar.
DECLARE @DataInicial datetime, @DataFinal datetime SELECT @DataInicial = '2017/01/01', @DataFinal = '2017/03/06'; WITH TodosOsDias AS (SELECT @DataInicial AS DiaSemana, DATEDIFF(DAY, @DataInicial, @DataFinal) AS DiffDays UNION ALL SELECT DATEADD(dd, 1, DiaSemana), DiffDays - 1 FROM TodosOsDias TOD WHERE DiffDays > 0) SELECT COUNT(*) FROM TodosOsDias WHERE DATEPART(dw, DiaSemana) IN (2, 3, 4, 5, 6);
Espero que seja útil para vocês também, caso vocês conheça mais formas de obter essa informação, compartilhe conosco nos comentários, a comunidade SQL Server agradece!
Grande Abraço!
Saiba como a função UPPER() no SQL Server pode degradar a performance das suas consultas…
Saiba agora mesmo como você pode diminuir o RESOURCE_SEMAPHORE_QUERY_COMPILE no SQL Server. Recentemente eu trabalhei em…
Nós DBA' e desenvolvedores quase sempre temos que trabalhar com datas quando se trata de…
Quais são as diferentes maneiras de proteger o login Senha do Administrador (SA)? Todos estão…
Com os direitos que o login sa tem por padrão no SQL Server, é obrigatório…
Como um DBA, você tem a responsabilidade de garantir a segurança do aplicativo e dos…