ismenio Posted July 30, 2014 at 11:52 AM Report Share #563703 Posted July 30, 2014 at 11:52 AM Bom dia Apesar de estar habituado a trabalhar com o JOIN surgiu-me uma situação a qual não estou a conseguir resolver e por isso peço a vossa ajuda Tenho duas tabelas muito simples: Tabela: membros id_membro -------------- 1 -------------- 2 -------------- 3 -------------- Tabela: banidos id_banido --------------- 1 --------------- Se fizer a seguinte query tudo bem, funciona como esperado: SELECT * FROM membros LEFT JOIN banidos ON membros.id_membro=banidos.id_banido WHERE membros.id_membro = banidos.id_banido e devolve 1........tudo bem mas o que quero fazer é o contrario, quero que aparaçam os que não estão na tabela banidos, ou seja 2 e 3 para isso fiz a seguinte query mas não devolve nada, o que estou a fazer mal ? SELECT * FROM membros LEFT JOIN banidos ON membros.id_membro=banidos.id_banido WHERE membros.id_membro != banidos.id_banido Obrigada desde já. Link to comment Share on other sites More sharing options...
nelsonr Posted July 30, 2014 at 11:55 AM Report Share #563705 Posted July 30, 2014 at 11:55 AM Boas, se já tens a definição da relação entre as tabelas depois do ON, para que repetes no WHERE? Julgo que para fazer o que pretendes, deves usar WHERE banidos.id_banido IS NULL Link to comment Share on other sites More sharing options...
HappyHippyHippo Posted July 30, 2014 at 12:20 PM Report Share #563707 Posted July 30, 2014 at 12:20 PM isso é obtido com um SQL muito mais simples e intuitivo : select * from membros WHERE id_membro NOT IN (SELECT id_banido FROM banidos) IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to comment Share on other sites More sharing options...
ismenio Posted July 30, 2014 at 01:10 PM Author Report Share #563708 Posted July 30, 2014 at 01:10 PM (edited) Obrigada tens toda a razão, funciona 👍 Alias, funciona com ambas as sugestões. Edited July 30, 2014 at 04:44 PM by ismenio Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now