1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Problema SQL...

Discussão em 'Programação' iniciada por ShadeX, 30 de Março de 2006. (Respostas: 4; Visualizações: 676)

  1. ShadeX

    ShadeX Power Member

    Hmm, tou praqui com um problema que me tá a matar, a ver se alguem me pode dar uma ajuda...

    Tenho duas tables numa db mysql, chamemos-lhe t1 e t2. A table t1 (que representa productos) tem varias colunas, sendo uma delas o codigo_producto que é a chave primaria. Na tabela t2 tenho três colunas, codigo_producto, armazem_producto, stock_producto, e assim o é pq cada armazem tem stocks independentes...

    Agora a duvida. Existe alguma maneira em SQL de fazer um query que me devolva a t2 só com o codigo_producto e as somas do mesmo dos diferentes armazens?

    Atm estou a safar a coisa na app fazendo um "SELECT campos necessários FROM t1;" e a seguir vou row a row pedir um "SELECT SUM(stock_producto) FROM t2 WHERE codigo_producto='ocodigodeproducto';" ... Mas diabos, isto alem de inestético, são uma pilha se SELECTS... o que resulta num tempo imenso.

    Alguem sabe como podeira passar esta embrulhada para server side?

    TIa
     
  2. KiKas

    KiKas Power Member

    Funções de Agregação

    select t2.codigo_producto ,t2.armazem_producto, sum(t2.stock_producto) as total
    from t2
    group by t2.codigo_producto ,t2.armazem_producto;
     
  3. ShadeX

    ShadeX Power Member

    Agradecido, mas não me resolve o problema :) Ah well, still looking...
     
  4. dElpH!

    dElpH! 1st Folding then Sex

    Select * from t1
    inner join t2 on t1.codigo_produto = t2.codigo_produto
    -- //--
    Select t1.codigo_produto,sum(t2.stock) from t1
    inner join t2 on t1.codigo_produto = t2.codigo_produto
    group by codigo_produto


    Deixa ver se percebi Para cada produto queres o stock independentemente de qual seja o armazem ?


    []'s
     
    Última edição: 31 de Março de 2006
  5. miguas

    miguas Power Member

    Select sum(stock_producto),armazem_producto from t1,t2 where t1.codigo_producto = t2.codigo_producto group by armazem_producto

    Isto deve dar, digo eu

    :cool:
     

Partilhar esta Página