Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

J_Alvares

Operador lógico não funciona

Recommended Posts

Olá a todos,Eu tenho uma tabela chamada PRODUTOS e gostaria que exibisse o nome dos produtos cuja o valor seja igual a 4, maior que 5 e igual a 40, depois de executar o comando aparece: Empty set (0.00 sec).SELECT nome_produto, preco FROM produtos WHERE nome_produto=4 AND nome_produto>5 AND nome_produto=40;Porque será que o comando AND dá Empty set, já o comando Or funciona, mas não é para a minha lógica.Alguma dica?tk´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

acho que não entendi direito, você quer fazer um select que volte um valor =4 e ao mesmo tempo <5 ???? isso não existeou ele e = a 4 ou maior que 5

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não lcs_sp, eu coloquei qualquer valor neste exemplo, rsrs, mas na lógica normal não funcionou, mas já entendi qual foi o meu verdadeiro erro...Na condição WHERE eu expressei outra coluna. Veja:

SELECT nome_produto, preco FROM produtos WHERE nome_produto=4 AND nome_produto>5 AND nome_produto=40;

inves de eu usar preco eu usei nome_produto na condiçao.Faltou atenção mesmo, valeu!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alem de você ter errado o nome do campo na clausula WHERE você cometeu mais um pequeno erro.... esse SQL nunca vai te retornar nada! creio q oq você estava querendo seje isso:

SELECT nome_produto, preco FROM produtos WHERE preco=4 OR preco>5 OR preco=40;

trocando o AND por OR, ai sim poderá te retornar registros... AND = O registro tem que se encaixar em todos os parametros da clausula WHERE (ou seja impossivel, nesse caso)OR = O registro tem que se encaixar em apenas um dos parametros da clausula WHERE.OK Até mais

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.