gremio10 14 Denunciar post Postado Março 30, 2011 Fala galera, seguinte, eu tenho duas tabelas a tabela clientes e a tabela respostas quero pesquisar apenas os clientes que não estão na tabela respostas, como faço ? tentei no WHERE colocar '<>' mas ai não lista nada, não sei se existe uma negação para o SQL.. Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
Wess 1 Denunciar post Postado Março 30, 2011 gremio10, neste caso você tem utilizar uma SUBSELECT (acho que deva ter outros meios). Exemplo: SELECT * FROM clientes WHERE clientes.id NOT IN ( SELECT DISTINCT clientes_id FROM respostas; ) O SUBSELECT pegará todos os ID dos clientes (clientes_id) da Tabela respostas e o SELECT principal irá pegar todos usuários que não tem o ID retornado na consulta. Veja se isso lhe ajuda. Compartilhar este post Link para o post Compartilhar em outros sites
gremio10 14 Denunciar post Postado Março 30, 2011 Tem como eu fazer isso sem usar o SUBSELECT ? Compartilhar este post Link para o post Compartilhar em outros sites
Wess 1 Denunciar post Postado Março 30, 2011 Tem como eu fazer isso sem usar o SUBSELECT ? Meu caro infelizmente eu não tenho outra idéia no momento, mas pq n usar SUBSELECT? Compartilhar este post Link para o post Compartilhar em outros sites
gremio10 14 Denunciar post Postado Março 30, 2011 Por que meu sistema de busca é todo usando arrays, tenho um exemplo de como funciona ele no code.imasters.com.br Abrçs Meu SELECT: SELECT `service_client`.* FROM `service_client` LEFT JOIN `service_client_answer` ON (service_client.id = service_client_answer.service_client_id) WHERE (service_client_answer.service_client_id NOT IN (SELECT DISTINCT service_client.id FROM service_client)) mas ele não encontrou nada.... Compartilhar este post Link para o post Compartilhar em outros sites