É Pá e Bola com o SQL Server – ④

Olá, boa tarde….

Este é mais um post da nova Sessão É Pá e Bola com SQL Server.

Aqui o papo vai ser simples e direto, sem formalidade, com dicas rápidas para se fazer algo relacionado com Microsoft SQL Server de forma geral.

Você pode estar se perguntando o porque deste nome, eu já te respondo.

O porquê é que todas as dicas a serem compartilhadas estão envolvidas com esportes praticados com bola, mas certamente outras modalidades terão seu devido destaque.

See the source image

No É Pá e Bola com o SQL Server – ④, vamos aprender como no Microsoft SQL Server identificar o primeiro dia do mês (“o nosso tradicional camisa 1 do time“), tendo como base a data atual ou até mesmo uma data informado pelo usuário.

A príncipio isso parece ser algo bem fácil, pois sabemos que todo mês começa no dia 1º, até aí tudo bem, mas qual seria o dia da semana que esta data representaria, é apartir deste ponto que eu quero mostrar para você como podemos obter esta informação, e mais algumas outras relacionadas a este dia no Microsoft SQL Server.

O primeiro exemplo vamos identificar o primeiro dia do mês, tendo como base a data atual, através do uso da função Current_TimeStamp(), a qual vai nos permitir através de sua finalidade, exibir um vamor de data e hora em relação ao momento em que a mesma foi executada, sendo reconhecida como uma etiqueta de marcação de tempo:

— Exemplo 1 – Bloco de Código —
Declare @Hoje Date, @InicioMes Date

Set @Hoje=Cast(Current_timestamp As Date)
Set @InicioMes=DateAdd(day, -(day(@Hoje) -1), @Hoje)

Select @Hoje As Hoje, @InicioMes As ‘Início do Mês’
Go

Simples, não é mesmo? Vamos agora melhorar um pouco mais este código, adicionando as funções DatePart() ou DateName() deixo a sua escolha, as quais nos permite obter mais detalhes sobre nossas datas, dentre elas:

  • Dia da Semana,
  • Dia da Semana no Ano,
  • Nome do mês,
  • Nome do dia da semana, e
  • Número do dia no Ano, etc…

Nosso segundo exemplo vai possibilitar a você saber em qual dia da semana o mês na respectiva data informada pelo usuário se inicia, em adicional, qual seria o dia da semana e número do dia no ano da respectiva data:

— Exemplo 2 – Bloco de Código —

— Definindo o dia de ínicio da semana —
Set DateFirst 1
Go

Declare @DataDeNascimento Date, @PrimeiroDiaDoMes Date

Set @DataDeNascimento = ‘1980-04-28’
Set @PrimeiroDiaDoMes = DateFromParts(Year(@DataDeNascimento),Month(@DataDeNascimento),1)

Select Concat(‘O mês começa no dia:’, DateName(day,@PrimeiroDiaDoMes), ‘º que representa o início do mês de: ‘,
DateName(Month, @DataDeNascimento),
‘ sendo um(a): ‘, DateName(weekday, @PrimeiroDiaDoMes),
‘ no decorrer do ano de: ‘, Year(@DataDeNascimento),
‘, a data representa o dia de número:’, DatePart(DAYOFYEAR, @PrimeiroDiaDoMes)) As ‘Sobre o mês de nascimento do nosso goleiro….’,
Concat(‘O nosso goleiro nasceu no dia: ‘, @DataDeNascimento, ‘ sendo esta um(a): ‘,
Case DatePart(WEEKDAY, @DataDeNascimento)
When 1 Then ‘Domingo’
When 2 Then ‘Segunda-feira’
When 3 Then ‘Terça-feira’
When 4 Then ‘Quarta-feira’
When 5 Then ‘Quinta-feira’
When 6 Then ‘Sexta-feira’
When 7 Then ‘Sábado’
End,
‘ que representa o dia de número:’, DatePart(DAYOFYEAR, @DataDeNascimento),
‘ ao longo do ano, ele escolheu a camisa de número: ‘, Datepart(WW, @DataDeNascimento),
‘ para fazer referência ao número da semana no decorrer do ano em que ele nasceu…’ ) As ‘Número da camisa..’
Go

A Figura 1 apresentada abaixo, ilustra o resultado obtido após a execução do Exemplo 2:

Figura 1 – Resultado obtido após a execução do Exemplo 2.

Desta forma, chegamos ao final…. simples, prático, rápido, mas nem sempre é fácil…..


É isso aí galera, aqui é É Pá e Bola com o SQL Server, espero que você tenha gostado….

Valeu….

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.