Tânia Rodrigues Postado Maio 5, 2016 Denunciar Share Postado Maio 5, 2016 Pessoal, estou com um problema.Poderiam me ajudar? Tenho a seguinte tabela: cod_produto | cor ---------------------------------- 5 | branco 5 | preto 5 | amarelo Tenho que fazer uma consulta para saber se o produto tem as 3 cores disponíveis, mas SELECT * FROM tabela WHERE cor='branco' AND cor='preto' AND cor='amarelo' não daria certo. Como eu teria que fazer esta consulta ? Alguém saberia me explicar? Muito agradecida pela atenção. Abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 marlon255 Postado Maio 5, 2016 Denunciar Share Postado Maio 5, 2016 Levando em consideração que você tem uma tabela bem mais preenchida podemos verificar isso... Tabela cod_produto | cor | disponivel 5 | Branco | sim 5 | Preto | sim 5 | Amarelo | não SELECT * FROM tabela WHERE cod_produto = '5' and disponivel = 'sim' Seria isso? Espero ter ajudado :) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Stoma Postado Maio 5, 2016 Denunciar Share Postado Maio 5, 2016 Pelo que entendi, a consulta seria esta: obs1: foi usado DISTINCT para que se o produto tiver cor duplicada, não seja considerado 2 vezes obs2: se o produto tiver as 3 cores, ele será retornado na consulta; caso contrário, a consulta fica em branco SELECT cod_produto, COUNT(DISTINCT cod_produto, cor) as qtd_cores FROM teste WHERE cod_produto = 5 AND cor IN('branco', 'preto', 'amarelo') /* lista de cores a serem comparadas */ GROUP BY cod_produto HAVING qtd_cores = 3 /* deve ser a quantidade de cores usada na comparação IN */ Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Tânia Rodrigues
Pessoal, estou com um problema.Poderiam me ajudar?
Tenho a seguinte tabela:
cod_produto | cor
----------------------------------
5 | branco
5 | preto
5 | amarelo
Tenho que fazer uma consulta para saber se o produto tem as 3 cores disponíveis, mas
SELECT * FROM tabela WHERE cor='branco' AND cor='preto' AND cor='amarelo'
não daria certo. Como eu teria que fazer esta consulta ?
Alguém saberia me explicar?
Muito agradecida pela atenção. Abraço
Link para o comentário
Compartilhar em outros sites
2 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.