Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

shuase

Exibir dados "diferentes ou nulos" entre duas tabelas.

Recommended Posts

Tenho duas tabelas e preciso exibir a seguinte informação:

 

 

 

Dados iniciais de exmplo da mesma:

tabela HORAS

hor_hora

01:00

02:00

03:00

04:00

05:00

06:00

 

 

 

tabela EVENTO

eve_datanormal eve_hora

27-05 01:00

27-05 03:00

27-05 04:00

28-05 01:00

28-05 02:00

 

 

 

A tabela HORAS tem a listagem completa das horas, ela sempre será a mesma.

 

A tabela EVENTO conterá o dia e a hora do evento q serão adicionados durante a semana.

 

Para adicionar dados a essa tabela EVENTO, tenho uma página CADASTRO.PHP q recebe através de _GET a variável DATA

 

 

Preciso q ao acessar essa página CADASTRO.PHP ela me apresente em um combox as horas q estão sobrando para o dia ou seja, para a variável DATA q veio de uma página anterior.

 

 

 

No exemplo acima ficaria assim:

 

Supor q eu receba $data tendo o valor 27-05, então no meu listmenu deveria aparecer as opções de hora disponíveis q seria 02:00 05:00 06:00 pois o 01:00 03:00 04:00 já está cadastrado na tabela c aquela data.

 

 

Tentei de "n" maneiras mas não obtive sucesso, a minha última tentativa foi:

 

 

SELECT
horas.hor_hora,
evento.eve_hora,
evento.eve_datanormal
FROM horas
LEFT JOIN evento ON (horas.hor_hora = evento.eve_hora) WHERE evento.eve_hora IS NULL
e com isso eu mostro o q sobrearia para ser adicionado na tabela EVENTO mas qndo eu jogo o filtro do dia q ficaria assim:
SELECT
horas.hor_hora,
evento.eve_hora,
evento.eve_datanormal
FROM horas
LEFT JOIN evento ON (horas.hor_hora = evento.eve_hora) WHERE evento.eve_hora IS NULL
AND evento.eve_datanormal = '$data'

Não da certo..

 

 

Alguém poderia me ajudar???

 

OBS: vão comentar q o campo data e campo hora tem q estar nas propriedades corretas enão em varchar como está mas indiferente disso, como q ficaria o select???

 

 

 


__________________tabela HORAS______________________________
CREATE TABLE `horas` (
`hor_id` int(11) NOT NULL auto_increment,
`hor_hora` varchar(20) default NULL,
PRIMARY KEY (`hor_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ;

 

__________________tabela EVENTO______________________________

 

 

CREATE TABLE `evento` (
`eve_id` int(11) NOT NULL auto_increment,
`eve_hora` varchar(10) default NULL,
`eve_datanormal` varchar(10) default NULL,
PRIMARY KEY (`eve_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=20 ;

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.