Select para gerar intervalos de horas

24/05/2013

0

Preciso fazer o seguinte. Passo um intervalo de horas, tipo: 8:00 17:00, logo dentro desse intervalo preciso fazer um select que me traga dentro desse intervalo, valores de 45min, começando às 8 e indo até às 18. Tipo,

8:00

8:45

9:30

10:15

....

até 18. Quanto ao intervalo de 45min, pode ser qualquer intervalo, qualquer valor, desde que se respeite o intervalo master.

A finalidade é criar uma agenda de horários
Pjava

Pjava

Responder

Posts

24/05/2013

Alex Lekao

Oi boa tarde!!!

Vc tem algum outro conteudo que sera agregado a ele?

Talvez vc tenha que utilizar uma CTE para Registrar os numeros em conjunto com uma funcao.

To checando algumas coisas aqui e ja ja posto o que achar.

Abraco.

Alex - Lekao
Responder

25/05/2013

Alex Lekao

Oi PJava, bom dia!!!

Cara fiz varias pesquisas e nao achei nada muito util, e nao consegui pensar em nada muito interessante para fazer o que esta querendo.

Agora uma pergunta, por se tratar de uma agenda, nao seria melhor vc ter uma tabela de agenda com um padrao definido destes intervalos onde vc trataria caso a caso de maneira melhor?

Bom eh isso ae, vou acompanhar o post se aparecer algo, servira para mim tambem.

Desculpe por nao ter podido ajudar. :-./

Abraco.

Alex - Lekao
Responder

14/06/2013

Cesar Roniglei

Boa tarde, creio que este Script possa lhe ajudar.

Declare @Intervalo Int      = 30,
		@Inicial   DateTime = '2013.06.14 08:00',
		@Final     DateTime = '2013.06.14 17:00',
		@Atual     DateTime = '2013.06.14 08:00',
		@Qtde      Int      = 50

While (@Qtde > 0) begin
  if not DATEADD(Minute , @Intervalo * @Qtde, @Atual) > @Final
    Select Convert(NVarchar, DATEADD(Minute , @Intervalo * @Qtde, @Inicial), 108) Horario
    Set @Qtde = @Qtde - 1  
end
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar