Ver Mensaje Individual
  #2 (permalink)  
Antiguo 26/12/2014, 08:13
Avatar de Libras
Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 6 meses
Puntos: 774
Respuesta: Suma entre columnas de distintas tablas

Código SQL:
Ver original
  1. CREATE TABLE #inicial
  2. (id INT,
  3. stock INT)
  4.  
  5. INSERT INTO #inicial VALUES (1, 5)
  6. INSERT INTO #inicial VALUES (2, 3)
  7. INSERT INTO #inicial VALUES (3, 8)
  8.  
  9.  
  10. CREATE TABLE #albaran
  11. (id INT,
  12. cantidad INT)
  13.  
  14.  INSERT INTO #albaran VALUES (1, 8)
  15. INSERT INTO #albaran VALUES (3, 1)
  16. INSERT INTO #albaran VALUES (4, 10)
  17.  
  18. SELECT id,stock+cantidad AS total FROM
  19. (
  20. SELECT
  21. CASE
  22. WHEN isnull(t1.id,0)=0 AND isnull(t2.id,0)>0 THEN t2.id
  23. WHEN isnull(t2.id,0)=0 AND isnull(t1.id,0)>0 THEN t1.id
  24. ELSE
  25.  t2.id
  26. END AS id,
  27. CASE WHEN isnull(t1.stock,0)=0 THEN 0 ELSE t1.stock END AS stock,
  28. CASE WHEN isnull(t2.cantidad,0)=0 THEN 0 ELSE t2.cantidad END AS cantidad
  29. FROM #inicial AS t1
  30. FULL OUTER JOIN #albaran AS t2 ON (t1.id=t2.id)
  31. ) AS total

saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me