none
Dúvida SQL RRS feed

  • Pergunta

  • Por favor, abaixo eu tenho a entrada e saída de um funcionario, eu consigo trazer somente em uma linha por funcionário e a entrada e saída?<br/>
    Por exemplo o Gerson - 07:58 e 18:01 na mesma linha?<br/>
    <br/>
    func_mat	bat_dt	Funcionario	bat_hora	mov_hor	horaentrada
    11797	2010-12-06 00:00:00.000	GERSON CORREA DOS SANTOS      	1900-01-01 07:58:29.000	1	2010-12-07 08:00:00.000
    11797	2010-12-06 00:00:00.000	GERSON CORREA DOS SANTOS      	1900-01-01 18:01:26.000	4	2010-12-07 08:00:00.000
    11807	2010-12-06 00:00:00.000	LUIZ ALMEIDA DA SILVA       	1900-01-01 07:36:32.000	1	2010-12-07 08:00:00.000
    11807	2010-12-06 00:00:00.000	LUIZ ALMEIDA DA SILVA       	1900-01-01 18:00:11.000	4	2010-12-07 08:00:00.000
    13050	2010-12-06 00:00:00.000	MARCO ANTONIO CANDIDO DUPIM    	1900-01-01 06:13:16.000	1	2010-12-07 08:00:00.000
    13050	2010-12-06 00:00:00.000	MARCO ANTONIO CANDIDO DUPIM    	1900-01-01 21:02:35.000	4	2010-12-07 08:00:00.000
    13545	2010-12-06 00:00:00.000	FABIANO GOMES CESARIO       	1900-01-01 08:01:01.000	1	2010-12-07 08:00:00.000
    13545	2010-12-06 00:00:00.000	FABIANO GOMES CESARIO       	1900-01-01 18:00:50.000	4	2010-12-07 08:00:00.000
    
    

    Meu Select

     

    SELECT     func_mat, bat_dt, Funcionario, bat_hora, mov_hor, horaentrada
    FROM         dbo.tblMovimento
    inner join Funcionarios on matricula = func_mat
    --WHERE     (func_mat = 27471)
    where  (CONVERT(varchar(10), bat_dt, 103) = CONVERT(varchar(10), GETDATE() -1, 103)) AND (estab_cod = 706) AND (emp_cod = 7)
    and mov_hor <> 2 and mov_hor <> 3

     

    Obrigado.

     

    Fabio

    terça-feira, 7 de dezembro de 2010 19:21

Respostas

  • Fabio,

    Segue uma maneria rápida.. não seise se aplica no seu caso.. mas testa ae...

    declare @tblMovimento table (func_mat int, bat_dt datetime, Funcionario	varchar(60), bat_hora datetime,	mov_hor int, horaentrada datetime)
    insert into @tblMovimento values(11797,'2010-12-06 00:00:00.000','GERSON CORREA DOS SANTOS','1900-01-01 07:58:29.000',1,'2010-12-07 08:00:00.000')
    insert into @tblMovimento values(11797,'2010-12-06 00:00:00.000','GERSON CORREA DOS SANTOS','1900-01-01 18:01:26.000',4,'2010-12-07 08:00:00.000')
    insert into @tblMovimento values(11807,'2010-12-06 00:00:00.000','LUIZ ALMEIDA DA SILVA','1900-01-01 07:36:32.000',1,'2010-12-07 08:00:00.000')
    insert into @tblMovimento values(11807,'2010-12-06 00:00:00.000','LUIZ ALMEIDA DA SILVA','1900-01-01 18:00:11.000',4,'2010-12-07 08:00:00.000')
    insert into @tblMovimento values(13050,'2010-12-06 00:00:00.000','MARCO ANTONIO CANDIDO DUPIM','1900-01-01 06:13:16.000',1,'2010-12-07 08:00:00.000')
    insert into @tblMovimento values(13050,'2010-12-06 00:00:00.000','MARCO ANTONIO CANDIDO DUPIM','1900-01-01 21:02:35.000',4,'2010-12-07 08:00:00.000')
    insert into @tblMovimento values(13545,'2010-12-06 00:00:00.000','FABIANO GOMES CESARIO','1900-01-01 08:01:01.000',1,'2010-12-07 08:00:00.000')
    insert into @tblMovimento values(13545,'2010-12-06 00:00:00.000','FABIANO GOMES CESARIO','1900-01-01 18:00:50.000',4,'2010-12-07 08:00:00.000')
    
    SELECT   func_mat, bat_dt, Funcionario, min(bat_hora) entrada, max(bat_hora) saida, horaentrada
    FROM     @tblMovimento
    group by func_mat, bat_dt, Funcionario, horaentrada
    

    att.
    Marcelo Fernandes


    MCP, MCDBA, MCSA, MCTS.
    Se útil, classifique!!!
    Me siga no twitter: @marcelodba

    terça-feira, 7 de dezembro de 2010 19:36
    Moderador