SELECT COM DATAS MYSQL

USUARIO.EXCLUIDOS 23/11/2006 14:05:49
#185925
preciso fazer o seguinte:
Tenho uma tabela de registro de atividade do pessoal aqui da GVT. ou seja:

Nºlog Nome_usuario data_inicial data_final
1 João 22-11-2006 11:10 22-11-2006 18:30
2 João 22-11-2006 22:30 22-11-2006 23:35


tenho mais o menos isso na tavela.. mas tem milharess de usuarios..
preciso de uma consulta que mostre o tempo que ele não trabalhou.. ou seja
das 22-11-2006 18:30 até as 22-11-2006 22:30.. intende.. esse tempo de 3 horas..

ahh.. são varios dias.... tipo... o mes inteiro.. sendo 1 log por dia..
preciso do total de horas que ele Não Trabalhou... a folga entre as horas..

Obrigado a quem ajudar...

USUARIO.EXCLUIDOS 23/11/2006 14:59:12
#185941
Mas vc quer isto somente com um Select ou pode ser via programação, tipo um For??

Se puder ser com o For até posto um exemplo aqui, agora só com um select sei não...
USUARIO.EXCLUIDOS 23/11/2006 17:28:29
#185966
hehehe

Valew.. a principio era pra ser so com um select ...
mas revi a situação e ja vi que não vai dar não..
se puder postar um exemplo...

Vlw...
EDSONLOPES 23/11/2006 18:15:53
#185977
Por Select faça o seguinte;
Select campos from tabela where data between 'aaammddhhmmss' and 'aaammddhhmmss'
USUARIO.EXCLUIDOS 24/11/2006 09:44:57
#186072
EdsonLopes,

Nà¢o deu certo esse seu select....
e acho que between não me ajudaria..
mas obrigado...

USUARIO.EXCLUIDOS 24/11/2006 09:50:13
#186075
Com o For da pra fazer Tipo assim

Dim rs as New ADODB.Recordset
rs.Open "Select * from tblAtividade Where nome_usuario like 'joão'", cnn, 3

Dim Acumulado as Date
Dim FinalAnt as Date
For i = 1 to rs.Recordcount
if i > 1 Then
Acumulado = Acumulado + (Cdate(rs("data_inicial")) - FinalAnt)
End If

FinalAnt = rs("data_final")
Next

MsgBox Acumulado



Cara, fiz meio por cima... mas deve dar certo... a lógica é esta...
Com um select só eu realmente não sei como fazer não! hehe

QUalquer coisa posta aew...
Tópico encerrado , respostas não são mais permitidas