JavaScript Postado Janeiro 6, 2011 Denunciar Share Postado Janeiro 6, 2011 tenho 2 tabelas e preciso buscar apenas o nome dos vendedores q não tem clientesUma tabela é a Clientes e a outra Vendedores, na tabela clientes tenho o codigo do vendedor que atende ele.Como faço pra pegar apenas o nome dos vendedores que não tem clientes e mostrar na tela? tabela cliente codigocliente codigologradouro codigovendedor nomecliente 1 1 2 Pedro Romeu 2 3 1 Maria Gabriela 3 5 5 Jéssica Lopes tabela vendedor codigoVendedor codigoLogradouro nomeVendedor 1 1 Ana da Silva 2 3 João Luis 3 1 Pedro Bial Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Cosme Ferreira Postado Janeiro 7, 2011 Denunciar Share Postado Janeiro 7, 2011 Bom dia Sr. JavaScript... =' )Cara, simulei duas formas para fazer, e fico com a segunda..rs... create table #tabCdCliente (codCliente int, codLogradouro int, codVendedor int, nomecliente varchar(100)) create table #tabCdVendedor (codVendedor int, codLogradouro int, nomeVendedor varchar(50)) insert into #tabCdCliente select 1, 1, 2, 'Pedro Romeu' union all select 2, 3, 1, 'Maria Gabriela' union all select 3, 5, 5, 'Jéssica Lopes' insert into #tabCdVendedor select 1, 1, 'Ana da Silva' union all select 2, 3, 'João Luis' union all select 3, 1, 'Pedro Bial' --Primeira forma select * from #tabCdVendedor V where codVendedor not in (select codVendedor from #tabCdCliente) --Segunda Forma select V.* from #tabCdVendedor V left join #tabCdCliente C on ( C.codVendedor = V.codVendedor) where isnull(C.codCliente,0) = 0 drop table #tabCdCliente drop table #tabCdvendedor Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 JavaScript Postado Janeiro 7, 2011 Autor Denunciar Share Postado Janeiro 7, 2011 Amigo não deu certo,segue abaixo minhas 2 tabelas, há clientes com codigo do vendedor =0 para aqueles que não possuem vendedores, agora preciso consultar os vendedores que não tem clientes, os quais seriam os codigos da tabela vendedores que não estao na tabela clientes.CREATE TABLE clientes ( codigocliente INTEGER PRIMARY KEY, codigologradouro INTEGER NOT NULL, codigovendedor INTEGER NOT NULL, nomecliente VARCHAR(50), numeroresidenciacliente VARCHAR(5), complementoenderecocliente VARCHAR(10), ceplogradourocliente VARCHAR(8), cpfcliente VARCHAR(11), datanascimentocliente DATE, telefoneresidencialcliente VARCHAR(15), telefonecelularcliente VARCHAR(15), FOREIGN KEY (codigologradouro) REFERENCES logradouros (codigologradouro), FOREIGN KEY (codigovendedor) REFERENCES vendedores (codigovendedor) ) CREATE TABLE vendedores ( codigoVendedor INTEGER PRIMARY KEY, codigoLogradouro INTEGER NOT NULL, nomeVendedor VARCHAR(50), numeroResidenciaVendedor VARCHAR(5), complementoEnderecoVendedor VARCHAR(10), cepLogradouroVendedor VARCHAR(8), cpfVendedor VARCHAR(11), telefoneCelularVendedor VARCHAR(15), FOREIGN KEY (codigoLogradouro) REFERENCES logradouros (codigoLogradouro) ) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fulvio Postado Janeiro 7, 2011 Denunciar Share Postado Janeiro 7, 2011 Bom dia Java, O script não funcionou pois a estrutura de sua tabela consta a coluna CodigoVendedor NOT NULL. Basta adaptar o mesmo código passado pelo Cosme (que está correto) para a sua estrutura. Se os clientes com codigovendedor=0 são os clientes que não possuem Vendedor associado, basta dar o select direto na tabela Clientes, filtrando o codigovendedor=0. No seu exemplo, você postou a linha "Jéssica Lopes" contendo o codigovendedor=5. Na tabela Vendedor, não há o codigovendedor=5. Minha dúvida: na estrutura da tabela Cliente, o codigovendedor é FK. (???) Dê uma olhadada se a FK existe. Se existir, verifique se está ativa.Para pegar os códigos dos vendedores que não estão na tabela clientes (forma mais simples, mas a menos otimizada):select * from vendedores where codigoVendedor not in (select distinct codigovendedor from clientes)A segunda forma de consulta postada pelo Cosme é a melhor. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 JavaScript Postado Janeiro 8, 2011 Autor Denunciar Share Postado Janeiro 8, 2011 valeu pessoal consegui da seguinte forma:SELECT V.nomeVendedor FROM Vendedores V WHERE NOT EXISTS(SELECT C.codigoVendedor FROM Clientes C WHERE C.codigoVendedor = V.codigoVendedor) Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
JavaScript
tenho 2 tabelas e preciso buscar apenas o nome dos vendedores q não tem clientes
Uma tabela é a Clientes e a outra Vendedores, na tabela clientes tenho o codigo do vendedor que atende ele.
Como faço pra pegar apenas o nome dos vendedores que não tem clientes e mostrar na tela?
tabela cliente
codigocliente codigologradouro codigovendedor nomecliente
1 1 2 Pedro Romeu
2 3 1 Maria Gabriela
3 5 5 Jéssica Lopes
tabela vendedor
codigoVendedor codigoLogradouro nomeVendedor
1 1 Ana da Silva
2 3 João Luis
3 1 Pedro Bial
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.