Dúvida sobre consulta sql

5 respostas
arochafademac

Pessoal, tenho uma dúvida sobre uma consulta sql
Tenho a seguinte tabela em mysql

int, not null, primary key int not null timestamp not null timestamp quando o usuario loga é cadastrado uma entrada na tabela com um novo id e quando ele é preenchida a saida, ate ai tudo bem. Preciso montar uma sql para gerar um relatorio no ireport que liste na horizontal os dias de 01 a 31 e na vertical cada usuario (uma linhda para cada idusuario)...mas não estou conseguindo fazer essa separasao nas linhas....nas consultas que fiz retorna varias linhas pro mesmo idusuario...alguem sabe fazer??? Vlw

5 Respostas

C

Poste aqui o que fez até o momento…

arochafademac

tentei algo assim…

select p1.usuario, p2.hora, p3.hora from ponto p1
left join ponto p2 on (p2.hora between 2007-08-15 and 2007-08-16) and p2.usuario != p1.usuario
left join ponto p3 on (p3.hora between 2007-08-16 and 2007-08-17) and p3.usuario != p2.usuario and p3.usuario != p1.usuario

mas nada feito…acredito que seja algo como “where diferente das outras linhas” mas nao sei fazer isso

arochafademac

Novidades…consegui quase oque eu queria

select ponto.usuario, p2.hora dia1, p3.hora dia2 from ponto

left join ponto p2 on (p2.hora between 2007-08-01 and 2007-08-02)

left join ponto p3 on (p3.hora between 2007-08-02 and 2007-08-02)

para todos os dias

group by ponto.usuario

mas ta retornando sem as datas , ta retornando so os usuarios…pq?

arochafademac

Mais novidades…faltou as aspas na data mas tem outro porem…ele ta embolando tudo…tipo quem não tem data naquele dia ele retorna uma data qualquer…esquesito…acho que to completamente fora de contexto…volta ao zero

arochafademac

Galera, estive pensando e resolvi mudar o principio…esse relatorio gerado seria grande d+ para caber na folha…
Tentem me ajuda da seguinte forma…
O relatorio terá ainda os dias de 1 a 31 mas agora so vai mostrar a quantidade de horas por dia de cada um…como faria?

Criado 15 de agosto de 2007
Ultima resposta 15 de ago. de 2007
Respostas 5
Participantes 2