problema com pesquisa no mysql

0 views
Skip to first unread message

bruno rodrigues

unread,
Mar 6, 2011, 3:11:16 PM3/6/11
to pos_a...@googlegroups.com
sr(a)s,
Tenho um problema no mysql, vamos a introdução:

 - preciso fazer um programa que agende tarefas aos funcionários.
 - o programa recebe a tarefa do email e é cadastrado.
-  cada tarefa cadastrada  é agendada a um funcionário e armazenada em uma tabela de tarefas agendadas.
__ meu problema é que na hora de mostrar as tarefas não agendadas, as que estão agendadas também aparecem na tela:

a pesquisa é feita por tres tabelas sendo elas:
tipo_tarefa, tarefa, tarefas_agendadas.

a query é assim: "select tarefa.id_tarefa,tipo_tarefa.nome from tarefas_agendadas,tarefa,tipo_tarefa where tarefa.id_tipo_tarefa = tipo_tarefa.id_tipo_tarefa and tarefas_agendadas.id_tarefa != tarefa.id_tarefa;"

o problema é que quando a pesquisa é realizada ao invés de me mostrar só as tarefas que não estão na tabela tarefas_agendadas(as que não estão agendadas) que refere a tarefas_agendadas.id_tarefa != tarefa.id_tarefa, ela me mostra todas as tarefas duas vezes exceto as que estão na tabela tarefas_agendadas como se ele comparasse cada id da tarefa com cada id das tarefas agendadas e mostrasse tudo.

alguém tem uma idéia de como fazer essa pesquisa de forma diferente? me ajudem por favor é urgente, obrigado


 

Bárbara Malafaia

unread,
Mar 8, 2011, 7:09:33 AM3/8/11
to pos_a...@googlegroups.com
Bruno, me fala os campos de cada tabela.
 
Essas tabelas não se relacionam?
 
Minha sugestão está anexada...
 
ai vc faz assim:
 
select t.id_tarefa, t.dsc_tarefa, tf.nom_tipo_tarefa from tarefas t inner join tipos_tarefas tf on t.id_tipo_tarefa = tf.id_tipo_tarefa inner join tarefas_agendadas ta on ta.id_tarefa = t.id_tarefa
 
Não testei.. vê se dá e qualquer coisa me fala..
 
beijos.

Bárbara Malafaia

unread,
Mar 8, 2011, 9:42:22 AM3/8/11
to pos_a...@googlegroups.com
Esqueci do anexo...
tabelas_relacionamento.JPG

bruno rodrigues

unread,
Mar 8, 2011, 2:36:46 PM3/8/11
to pos_a...@googlegroups.com
Barbara,
Deu certo!!!!
pensei q o inner join não funcionava sem determinar as chaves estrangeiras (no mysql q trabalho nao aceita foreign key, rsrs, acho q porq a versao é antiga, por isso não usei), mas aí usei sem colocar as chaves e funcionou direitinho. Mais uma vez obrigado pela ajuda vc tem a manha.
bjão.


--- Em ter, 8/3/11, Bárbara Malafaia <barbara...@gmail.com> escreveu:
Reply all
Reply to author
Forward
0 new messages