Tenho a seguinte situação.

exemplo:

CLIENTE
------------
id_cliente SERIAL PK,
nome_cliente VARCHAR(50)


TIPOPRODUTO
----------------
id_tipoproduto SERIAL PK,
descricao_tipoproduto VARCHAR(30)


PRODUTO
---------------
id_produto SERIAL PK,
nome_produto VARCHAR(50),
preco_produto NUMERIC(7,2),
tipo_produto INTEGER FK   /*TIPOPRODUTO*/


CONSUMO
-----------
cliente_consumo INTEGER FK,   /*CLIENTE*/
produto_consumo INTEGER FK,   /*PRODUTO*/
quant_consumo   INTEGER,
total_consumo   NUMERIC(7,2)



Preciso fazer uma query usando SUM() que some o total de todos os
consumos de um cliente X mas apenas onde o tipo de produto é Y. Ou seja.


TIPOPRODUTO
----------------
id_tipoproduto | descricao_tipoproduto
   1             Frigobar
   2             Restaurante


PRODUTO
----------------
id_produto | nome_produto | preco_produto | tipo_produto
   1         Coca Cola       2.50             1
   2         Chocolate       1.50             1
   3         Cerveja Lata    3.00             1
   4         Porção Tilápia  18.00            2
   5         Rodizio         25.00            2
   6         PF              10.00            2



CLIENTE
-----------
id_cliente | nome_cliente
  1          João Pereira
  2          Maria Antonieta


CONSUMO
---------
cliente_consumo | produto_consumo | quant_consumo | total_consumo
   1                 1                 2             5.00
   1                 2                 1             1.50
   1                 6                 2             20.00
   2                 1                 1             2.50
   2                 5                 2             50.00


Estou tentando fazer uma query que me traga a soma dos totais de consumo
(SUM(total_consumo)), de um cliente (1 ou 2), (aqui entra a minha
dificuldade) só dos consumos de produtos do frigobar (no caso
tipo_produto = 1).
Resumindo, preciso da soma total de tudo que um cliente consumiu apenas
no frigobar. O que complicou pra mim foi essa restrição de ser apenas
produtos de um tipo. Se fosse de todos os tipos tava tranquilo.

_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a