none
Consulta em SQL SERVER 2008 RRS feed

  • Pergunta

  • 1) tenho duas tabelas tb_cliente e tb_preco, quero criar uma consulta nestas duas tabelas e que o resultado que ela me traga seja todos os cliente que pagaram um preco  igual ou superio a 4000 e que ele é feito um desconto de 10% e me retorna também o preco descontado, fiz desta forma:

    select nomeCliente,preco

    from tb_cliente,tb_preco

    where nomeCliente = nomeCliente and preco >= 4000 - (4000 * 0.1)

    problema é que esta consulta me apresenta todos os cliente até os que pagaram um valor inferior ao da condição, o que faço para que ela retorna só os clientes que pagaram esse valor e preco descontado.

    2) o segundo exercicio é quase semelhante ao 1º, quero saber quais são os clientes que pagaram a lavagem do seu carro a dinheiro, no caso tenho a tabela cliente e tabela pagamento, com o seguinte codigo:

    select nomeCliente,tipoPagamento

    from tb_cliente,tb_pagamento

    where nomeCliente = nomeCliente and tipoPagamento = 'dinheiro'

    retorna todos os clientes independente do tipo de pagamento, o que faço para que a consulta só retorna os clientes pagaram a dinheiro?

    Obrigado!!!

    terça-feira, 20 de novembro de 2012 06:08

Respostas

  • Anacleto,

    Se eu bem entedi a ligação entre as duas tabelas é a coluna nomeCliente, se sim, você poderia fazer a consulta apenas na tabela tb_preco ficaria assim:

    Select 
     p.nomeCliente, 
     p.preco 
    From 
     tb_preco p
    Where 
     p.preco >= (4000 - (4000 * 0.1))

    Ou então você pode utilizar o inner join para fazer essa restrição, segue exemplo:

    Select 
     c.nomeCliente, 
     p.preco 
    From 
     tb_cliente c 
     inner join tb_preco p on c.nomeCliente = p.nomeCliente
    Where 
     p.preco >= (4000 - (4000 * 0.1))

    Já no segundo exercício:

    Select 
     c.nomeCliente,
     p.tipoPagamento
    From 
     tb_cliente c
     inner join tb_pagamento p on p.nomeCliente =  c.nomeCliente
    Where
     p.tipoPagamento = 'dinheiro'


    Se esta sugestão for útil, por favor, classifique-a como útil. Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.

    terça-feira, 20 de novembro de 2012 09:27