Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Tenho duas tabelas, uma de SMS onde tenho o id_sms, e tenho uma de agendamento de SMS onde crio os agendamento, e no agendamento eu tenho esse id_sms, e tenho uma combo-box que verifica, Agendado : SIM ou NÃO, se selecionar na combo a opção SIM quero q venha todos os SMS's que tenham agendamento ou seja que estejam cadastrados na tabela de agendamento, e caso selecione NÃO vem todos os SMS's sem agendamento ou seja que não estão cadastrados na tabela de agendamento !
gostaria de saber qual where poderia utilizar!
Na minha tabela de SMS :
id_sms(PK) | Nome
na minha tabela de Agendamento:
id_agendamento(PK) | id_sms(FK) .................
preciso saber, quais sms foram agendados, e tbm quais não foram, no caso será 2 where, um quando eu selecionar SIM ele me trazer todos os SMS que foram cadastrados agendamento, e quando selecionar NÃO me retorna todos os SMS que não tem agendamento que não foram cadastrados no caso.
Quando eu selecionar sim: SELECT FROM tabela_agendamentos e Quando eu selecionar não: SELECT FROM tabela_sms.
Espero ter Ajudado!
Mas eu preciso de Where, porque eu tenho um Select Geral, que faz join com a tabela de SMS e Agendamento, e se eu usasse esse caso uma hora teria todos os SMS que tem agendamentos, e outra hora teria todos os SMS independente se tem agendamento ou não!
EU ja tenho um select que faz left join entre as duas tabelas, preciso de um Where para SMS que possui agendamento e SMS que não possuem agendamento!Você poderia colocar um campo em sua tabela de Agendamento de Sim, e Não (ou 1 e 0), assim ficaria mais fácil.
Pelo que entendi, há um relacionamento entre as tabelas, a tabela sms registra todos os SMS, e a tabela agendamento que registra somente os SMS agendados.
Portanto será necessário um LEFT JOIN:
SELECT s., a.
FROM sms s
LEFT JOIN agendamento a ON a.id_sms = s.id_sms
Desta forma, trará todos os registros da tabela sms, seja agendados ou não, na cláusula WHERE você vai utilizar [inline]a.id_sms IS NULL[/inline] para quando for agendado e [inline]a.id_sms IS NOT NULL[/inline] para quando não estiver agendado.
Como é a estrutura de seu Banco de Dados (Colunas)?