Ir para conteúdo
Seja Membro VIP - Remova Banners de Propagandas, Tenha Liberado Qualquer Download, Além de Acessos em Áreas Exclusivas!! ×
Quer acesso a todas as Áreas do Fórum, até aquelas só para membros VIPs? Também quer poder baixar qualquer ARQUIVO? ×
AVISO AOS MEMBROS:

Fizemos uma atualização em 18/06/2023, e a forma de acesso ao Fórum mudou. Não mais está sendo aceito o login pelo Nome de Exibição cadastrado. Agora, apenas pelo email e pelos integradores de Login do Facebook, Google e Microsoft. O Facebook estava com uma validação pendente e já foi normalizado o acesso, já o Google, ainda estamos verificando o que está ocorrendo que não está funcionando.
Caso precisem de ajuda para o login pelo email acesse o link << Esqueci minha senha de acesso>> ou nos envie um pedido de ajuda pelo email admin@forumrm.com.br

Administração
ForumRM

Consulta SQL Linhas para Colunas


Posts Recomendados


  • Tópicos Que Criei:  69
  • Tópicos/Dia:  0.01
  • Meu Conteúdo:  339
  • Conteúdo/Dia:  0.06
  • Reputação:   12
  • Pontos/Conquistas:  2.393
  • Conteúdo Resolvido:  0
  • Dias Ganho:  8
  • Status:  Offline
  • Idade:  46

Prezados Amigos,

Estou fazendo a consulta abaixo em minha base SQL:

select RIGHT('0' + CAST(Batida / 60 As VARCHAR(2)),2) + ':' +

RIGHT('0' + CAST(Batida % 60 As VARCHAR(2)),2) Hora

from abatfun

where chapa = '001625' and

data = '2009-05-19'

O retorno que tenho da consulta é o horário que o funcionário fez no dia especificado na consulta acima:

Hora

1 08:57

2 13:06

3 14:06

4 19:45

A minha dúvia é como transformar o resultado em linhas para colunas para que eu consiga realizar a subtração e somar as horas dos dois turnos para comparar com a jornada do funcionário para saber se ele entrou mais cedo e quantas horas fez além do seu horário.

Fico no aguardo de uma ajuda.

Att,

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  61
  • Tópicos/Dia:  0.01
  • Meu Conteúdo:  659
  • Conteúdo/Dia:  0.10
  • Reputação:   1
  • Pontos/Conquistas:  3.883
  • Conteúdo Resolvido:  0
  • Dias Ganho:  1
  • Status:  Offline
  • Idade:  41

essa necessidade de colocar linhas como colunas se resolve com cursores ou com sub select, como o gerador nao aceita cursor ou while... faço por sub select, da maneira abaixo voce consegue o retorno que vc pediu, altere os where's com parametros ou variaveis:

select chapa,

B1 = (select RIGHT('0' + CAST(Batida / 60 As VARCHAR(2)),2) + ':' +

RIGHT('0' + CAST(Batida % 60 As VARCHAR(2)),2) Hora

from abatfun

where chapa = '001625' and data = '2009-05-19'

and batida = (select min(batida)

from abatfun

where chapa = '001625' and data = '2009-05-19')),

B2 = (select RIGHT('0' + CAST(Batida / 60 As VARCHAR(2)),2) + ':' +

RIGHT('0' + CAST(Batida % 60 As VARCHAR(2)),2) Hora

from abatfun

where chapa = '001625' and data = '2009-05-19'

and batida = (select min(batida)

from abatfun

where chapa = '001625' and data = '2009-05-19' and batida >(select min(batida)

from abatfun

where chapa = '001625' and data = '2009-05-19'))),

B3 = (select RIGHT('0' + CAST(Batida / 60 As VARCHAR(2)),2) + ':' +

RIGHT('0' + CAST(Batida % 60 As VARCHAR(2)),2) Hora

from abatfun

where chapa = '001625' and data = '2009-05-19'

and batida = (select max(batida)

from abatfun

where chapa = '001625' and data = '2009-05-19' and batida <(select max(batida)

from abatfun

where chapa = '001625' and data = '2009-05-19'))),

B2 = (select RIGHT('0' + CAST(Batida / 60 As VARCHAR(2)),2) + ':' +

RIGHT('0' + CAST(Batida % 60 As VARCHAR(2)),2) Hora

from abatfun

where chapa = '001625' and data = '2009-05-19'

and batida = (select max(batida)

from abatfun

where chapa = '001625' and data = '2009-05-19'))

from pfunc

where chapa = '001625'

Link para comentar
Compartilhar em outros sites

  • 1 mês depois...

  • Tópicos Que Criei:  13
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  120
  • Conteúdo/Dia:  0.02
  • Reputação:   0
  • Pontos/Conquistas:  725
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

Lugão,

atendeu perfeitamente a minha necessidade !

Valeu

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  110
  • Tópicos/Dia:  0.02
  • Meu Conteúdo:  1.391
  • Conteúdo/Dia:  0.21
  • Reputação:   17
  • Pontos/Conquistas:  8.047
  • Conteúdo Resolvido:  0
  • Dias Ganho:  9
  • Status:  Offline
  • Idade:  47
  • Dispositivo:  Windows

Aviso Sobre MultiModeração para Membros

Que bom que resolveu o problema.

Agora no fórum existe o esquema de multimoderação onde o próprio usuário que abriu o post pode marcar como resolvido.

Dá uma olhada no link abaixo que mostra como fazer.

http://www.forumrm.com.br/index.php?showtopic=1555

Link para comentar
Compartilhar em outros sites

Participe da conversa

Você pode postar agora, e se registrar mais tarde. Se você tiver uma conta, faça o login agora para postar com sua conta.

Visitante
Responder esse tópico

×   Você colou conteúdo com formatação.   Remover formatação

  Only 75 emoji are allowed.

×   Seu link foi automaticamente inserido no corpo do post.   Exibir como um link

×   Seu conteúdo anterior foi restaurado.   Limpar conteúdo do editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Criar Novo...

Informação Importante

Usando este site, você concorda com nossos Termos de Uso e nossa Política de Privacidade.