|
Postada em 29/12/2007 01:53 hs
Tenho 2 tabelas no Mysql Horarios e Agenda A tabela horarios tem o campo HORA e a tabela AGENDA tes HORA e DESCRICAO Estão com o seguintes valores Horarios HORA Agenda HORA DESCRICAO 10:00 10:02 Dentista 11:00 Gostaria de unir estas duas tabelas gerando o seguinte resultado 10:00 10:02 Dentista 11:00 Com a sql abaixo eu consegui unir os horarios, mas não estou conseguindo colocar a descrição no meio (Select hora from horarios) union (select hora from agenda) order by hora Como fazer pra colocar a DESCRICAO no meio deste resultado?? Agradesço desde já
|
|
|
|
JOM
|
BOM JESUS DA LAPA BA - BRASIL
|
|
Postada em 29/12/2007 10:03 hs
ja tentou selecionar a tabela agenda toda ou por o campo descrição no segundo select ? (Select hora from horarios) union (select * from agenda) order by hora ou (Select hora from horarios) union (select hora, descricao from agenda) order by hora
|
|
|
|
Postada em 29/12/2007 10:12 hs
Sim, ele fala que o número de colunas é diferente
|
|
|
JOM
|
BOM JESUS DA LAPA BA - BRASIL
|
|
Postada em 29/12/2007 10:50 hs
acho que o lefth Join deve dar certo, deve ficar + ou - assim: select hora from horarios left join agenda on horarios.hora = agenda.hora
|
|
|
JOM
|
BOM JESUS DA LAPA BA - BRASIL
|
|
Postada em 29/12/2007 10:56 hs
Knight, pode ser o Right Join, é que as vezes me atrapalho pois: Left Join tras todos os dados da 1° tabela mesma não havendo coincidente na segunda e Right Join traz todos os dados da segunda mesmo não havendo correspondente na primeira ou seja, se o que passei antes não funcionar basta alterar a clausula assim: select hora from horarios Right Join agenda on horarios.hora=agenda.hora
|
|
|
|
Postada em 29/12/2007 11:12 hs
JOM, vlw pela ajuda cara, mas n esta funcionando. A com UNION foi a que mais deu certo ate agora. Criei uma outra (select ID,HORA,TEXTO from agenda WHERE DATA ='2007-12-27') union (Select ID,HORA,TEXTO from horarios) order by hora Dentro do Mysql ela retorna todos os horarios, mas quando jogo ela no sistema ela só retorna o horario onde tem dados, ou seja, a linha onde a data é: 2007-12-29. Mas pra ela funcionar, eu adicionei campos em branco na tabela horarios
|
TÓPICO EDITADO
|
|
|
|