none
restar columnas de 2 tablas diferentes...

    Question

  • hola. tengo el siguiente problema: estoy trabajando con visual estudio 2005 c#. y estoy utilizando sql...
    tengo 2 tablas en mi proyecto, (INGRESO, DESPACHO) cada una tiene(CODIGO, DESCPRICION CANTIDAD, REFERENCIA..........) Mi pregunta es la siguiente: quiero agrupar los codigo que sean iguales y sumarlos para luego restarlo entre las tablas de ingreso y despacho.
     ejemplo:
    TABLA
    INGRESO          canti                          DESPACHO
    codigo=camisa    12                               franela 2
    codigo=franela     20                               franela 8
    codigo=camisa    18                              camisa 8
    codigo=franela     30                              camisa 2
    y quiero me me agrupe por el codigo(camisa, franela) me los sume para luego el resultado me lo reste de la otra tabla.
    osea el resultado= franela=40, camisa=20...
    nota: NOSE NADAAAAAAA de SQL........
    Saturday, June 11, 2011 11:40 PM

All replies

  • hola

    pero los codigo son als descripciones ? o sea camisa el el codig de tu tabla

    para agrupar del tabla de ingresos podrias hacer

    SELECT codigo, SUM(cantidad) AS cant FROM Ingresos GROUP BY codigo

    de esta forma tendras la suma de la primer tabla

    ahora bien la resta en la troa podrias ser

    UPDATE Despacho D
     INNER JOIN (SELECT codigo, SUM(cantidad) AS cant
            FROM Ingresos GROUP BY codigo) I
    ON I.codigo = D.codigo
    SET D.cantidad = D.cantidad - I.cant

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    Sunday, June 12, 2011 12:07 AM
  • ok bien pero esto lo hago en una vista o en una consulta?????????'
    Sunday, June 12, 2011 1:12 AM
  • depende de como quieras ejecutarlo

    es un update , pero no has especificado si es que se eejcuta manualmente o por codigo

    o sea es un update que se lanza una sola vez o sera algo que correra como proceso todos los dias

     

    lo planteo porque si es una sola vez podrias sua rel Sql Server Management Studio y lanzarlo desde alli directamente para que aplique el calculo

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    Sunday, June 12, 2011 1:20 AM
  • lo estoy colocando de esta manera que es como yo tengo los campos en mi tabla y me da el siguiente error.

    sintaxis incorrecta cerca de la palabra clave 'INNER'

     

    UPDATE    despacho INNER JOIN

                          (SELECTcod_ingre, sum(cant_ingre) AS cantin

    FROM         ingreso

    GROUP BY cod_ingre ON ingreso.cod_ingre = Despacho.cod_despa

    SET              Despacho.cant_despa = Despacho.cant_despa - ingreso.cant_ingre

    Sunday, June 12, 2011 1:21 AM
  • veo un parentesis que comienza en el

    INNER JOIN                       (SELECTcod_ingre,

    que no ahs cerrado en ningun lado

     

    ademas el SELECT esta pegado al nombre del campo

     

    sino escribes y validad la query cuando lo ejecutas dificilmente funcione

    asdemas estas aplcaindo una subconsulta, debes definirle un alias como hice en la que propuse, no puedes suar directo la tabla ingreso proque esta es parte de es subconsulta

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    Sunday, June 12, 2011 4:39 AM