Ir al contenido


Foto

PUEDO RESTAR


  • Por favor identifícate para responder
1 respuesta en este tema

#1 ariano

ariano

    Member

  • Miembros
  • PipPip
  • 12 mensajes

Escrito 24 junio 2013 - 10:10

MI DUDA ES LA SIGUIENTE TENGO UN TABLA STOCK
DONDE TENGO CAN_PRO Y COD_PRO
QUE LO QUISIERA RESTAR A ESTA SIGUIENTE CONSULTA


SELECT SUM(valor), pro
FROM (
  SELECT
    SUM(can_f) AS valor,
    cod_pro AS pro
  FROM
    ti
  WHERE
    cod_ccaja = '2' AND
    cod_turno = '4' AND
    fec_f = '2013-06-24'
  GROUP BY
    cod_pro
  UNION ALL
  SELECT
  SUM(can_ihf) AS valor,
  cod_pro AS pro
  FROM
    ins
  WHERE
    cod_ccaja = '2' AND
    cod_turno = '4' AND
    fec_f = '2013-6-24'
  GROUP BY cod_pro
)
GROUP BY pro;


ME PODRIAN AYUDAR
  • 0

#2 Sergio

Sergio

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.092 mensajes
  • LocationMurcia, España

Escrito 25 junio 2013 - 02:39

Antes de nada intenta no usar MAYUSCULAS siempre, en internet esto es GRITAR y daña un poco los ojos.

Suponiendo algunas cosas que no especificas en tu pregunta, yo diría que lo que preguntas es esto (ojo, igual me equivoco):


    SELECT SUM(C.valor)-S.CAN_PRO, C.pro
    FROM (
      SELECT
        SUM(can_f) AS valor,
        cod_pro AS pro
      FROM
        ti
      WHERE
        cod_ccaja = '2' AND
        cod_turno = '4' AND
        fec_f = '2013-06-24'
      GROUP BY
        cod_pro
      UNION ALL
      SELECT
      SUM(can_ihf) AS valor,
      cod_pro AS pro
      FROM
        ins
      WHERE
        cod_ccaja = '2' AND
        cod_turno = '4' AND
        fec_f = '2013-6-24'
      GROUP BY cod_pro
    ) C
    LEFT JOIN STOCK S ON S.COD_PRO=C.PRO
    GROUP BY C.pro;



Detalles:

-Le he puesto una C a tu "FROM", de forma que el "stock" lleva delante un S y lo que ya tenias una C (los campos ahora son "C.Campo" o "S.Campo").
-Un left join te conecta tu consulta con la tabla de stock -y le llama S- usando el codigo como nexo.
-En el select del principio le resto el valor que querías.

Espero que fuese esto!
  • 0




IP.Board spam blocked by CleanTalk.