Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Relacionamentos M:N SELECT


galrao

Pergunta

Olá DBAs

Tenho 3 tabelas

MENSAGEM | ENVIADOS | EMAILS

1) Mensage: pkMensagem / html

2) Enviados: fkMensagem / fkEmails

3) Email: pkEmail / email

Cada vez que crio uma mensagem eu gravo ela na Tabela Mensagem

Quanto vou enviar eu gravo na tabela ENVIADOS a PK de MENSAGEM e a PK de EMAILS

Eu não consigo realizar um SELECT para saber quais usuários eu ainda não enviei uma mensagem.

EX: Criei uma Mensagem e vou enviar:

pkMensagem == 1

enviados = fkMensagem = pkMensagem (1)

enviados = pkEmail (n) (até enviar todos)

Agora quero saber qual usuário ainda não recebeu a mensagem de pk 1.

Muito difícil? =D

Muito obrigado por qualquer Ajuda!!!

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
Agora quero saber qual usuário ainda não recebeu a mensagem de pk 1.

Sua resposta:

SELECT * 
FROM emails
WHERE pkemail NOT IN (SELECT fkemails 
      FROM enviados
      WHERE fkmensagem = 1);

Vai retornar a lista dos elementos que não estão em enviados.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...