Armazenar valor da Variável

20/07/2015

0

Ola Pessoal Gostaria de saber como eu armazeno o resultado de uma consulta do sql que tem Variável

declare @T int
declare @seg decimal(18,3), @min int, @hor int

set @T = (SELECT sum(DATEPART(SECOND, [Hora_1]) -
(DATEPART(MINUTE, [Hora_1])* 60)-
(DATEPART(HOUR, [Hora_1]))*3600) -

sum(DATEPART(SECOND, [Hora_2]) -
(DATEPART(MINUTE, [Hora_2])* 60)-
(DATEPART(HOUR, [Hora_2]))*3600) -

sum(DATEPART(SECOND, [Hora_3]) -
(DATEPART(MINUTE, [Hora_3])* 60)-
(DATEPART(HOUR, [Hora_3]))*3600) -

sum(DATEPART(SECOND, [Hora_4]) -
(DATEPART(MINUTE, [Hora_4])* 60)-
(DATEPART(HOUR, [Hora_4]))*3600) -

sum(DATEPART(SECOND, [Hora_5]) -
(DATEPART(MINUTE, [Hora_5])* 60)-
(DATEPART(HOUR, [Hora_5]))*3600) -

sum(DATEPART(SECOND, [Hora_6]) -
(DATEPART(MINUTE, [Hora_6])* 60)-
(DATEPART(HOUR, [Hora_6]))*3600) -

sum (DATEPART(SECOND, [Hora_extra_100]) -
(DATEPART(MINUTE, [Hora_extra_100])* 60)-
(DATEPART(HOUR, [Hora_extra_100]))*3600) as 'TempoSegundos'
FROM ponto where registro = @Registro and data = @Data)

set @hor = convert(int, @T /60 / 60)
set @min = convert(int, (@T / 60) - (@hor * 60 ))
set @seg = @T % 60

select convert(varchar(9), convert(int, @hor)) + ':' +
right('00' + convert(varchar(2), convert(int, @min)), 2) + ':' +
right('00' + convert(varchar(6), @seg), 6) as Total

Segue o Exemplo
Ivanilson Almeida

Ivanilson Almeida

Responder

Posts

21/07/2015

Jothaz

Sempre que for posta um código ou queyr utilize a tag coe "</>" do primeiro ícone a esquerda.

E sinceramente não entendi o que você quer!

Teria com ser mais claro?
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

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

Aceitar