SQL - SUMAR TOTALES

   
Vista:

SUMAR TOTALES

Publicado por NICO MONZON nicomonzon@gmail.com (12 intervenciones) el 06/09/2017 18:53:02
Hola a todos, tengo la siguiente consulta y quiero sumar los totales de cada subconsulta
consulta sql:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
Select Mcl_N_Cliente AS "COD CLIENTE",Mcl_Nombre AS "NOMBRE CLIENTE",Mcl_Riesgo as "RIESGO EN FICHA",
 
((select sum(importe) from(
SELECT DISTINCT to_number(fac_factura) fac_factura, to_char(fac_fecha,'dd/mm/yyyy') as fecha,
  fac_fecha,
  ((fac_importe+esNulo(fac_imp_gastos)+esNulo(fac_gastos_nominal)) - fac_cobro) as importe,
  to_number(fac_estado) as estado, fac_concepto,
  fac_letra_pagare, fac_num_efecto, wm_concat(giro_num_fac) ListaFacturas
 FROM factur01,
  (SELECT giro_letra_pagare, giro_num_efecto, giro_estado, giro_num_fac FROM giros
    UNION
   SELECT oper_transf_talon + 3, oper_numero, oper_estado, oper_num_fac FROM operbanc
  )
 WHERE ((fac_importe+esNulo(fac_imp_gastos)+esNulo(fac_gastos_nominal)) - fac_cobro) <> 0
   AND (fac_cliente = 430012017)
   AND fac_letra_pagare = giro_letra_pagare (+)
   AND fac_num_efecto = giro_num_efecto (+)
 GROUP BY to_number(fac_factura) , to_char(fac_fecha,'dd/mm/yyyy'),
  fac_fecha,
  ((fac_importe+esNulo(fac_imp_gastos)+esNulo(fac_gastos_nominal)) - fac_cobro),
  to_number(fac_estado), fac_concepto, fac_letra_pagare, fac_num_efecto
 
union
 
  select to_number(ant_codigo), to_char(ant_fecha_registro,'dd/mm/yyyy'), ant_fecha_registro,
         ant_importe_actual * -1, -1, ant_concepto, 0, 0, null
  from anticipo
  where
  ant_cliente = (430012017 + 8000000)
  And
  ant_importe_actual <> 0))) AS "FAC SIN COBRAR",
 
 (( select  sum(giro_importe) from(
SELECT  distinct(giro_num_efecto),
          to_char(giro_vencto,'dd/mm/yyyy') as fecha,
          giro_importe,
          giro_letra_pagare + 1 as giro_letra_pagare,
          giro_tipo, giro_cliente, wm_concat(giro_num_fac) numfac
  FROM    giros
 WHERE    giro_cliente = 430012017
   AND    ((giro_vencto > SYSDATE - 4) AND (giro_tipo   < 7) OR (giro_vencto <= SYSDATE) AND (giro_tipo IN (2,3,4)))
 GROUP BY giro_num_efecto,to_char(giro_vencto,'dd/mm/yyyy'),giro_importe,giro_letra_pagare + 1,giro_tipo, giro_cliente
 UNION
SELECT  distinct(oper_numero) as giro_num_efecto,
          to_char(oper_vencto,'dd/mm/yyyy') as fecha,
          oper_importe as giro_importe,
          oper_transf_talon + 5 as giro_letra_pagare,
          oper_tipo as giro_tipo, oper_cliente as giro_cliente, wm_concat(oper_num_fac) numfac
  FROM    operbanc
 WHERE    oper_cliente = 430012017
   AND    oper_transf_talon = 1
   AND    ((oper_vencto > SYSDATE - 4) AND (oper_tipo < 7) OR (oper_vencto <= SYSDATE) AND (oper_tipo IN (2,3,4)))
 GROUP BY oper_numero,to_char(oper_vencto,'dd/mm/yyyy'),oper_importe,oper_transf_talon + 5,oper_tipo,oper_cliente
 UNION
SELECT  distinct(oper_numero) as giro_num_efecto,
          to_char(oper_vencto,'dd/mm/yyyy') as fecha,
          oper_importe as giro_importe,
          oper_transf_talon + 5 as giro_letra_pagare,
          oper_tipo as giro_tipo, oper_cliente as giro_cliente, wm_concat(oper_num_fac) numfac
  FROM    operbanc
 WHERE    oper_cliente =430012017
   AND    oper_transf_talon = 0
   And    ((Oper_Vencto > Sysdate) And (Oper_Tipo < 6) Or (Oper_Vencto <= Sysdate) And (Oper_Tipo In (1,2,3,4)))
Group By  Oper_Numero,To_Char(Oper_Vencto,'dd/mm/yyyy'),Oper_Importe,Oper_Transf_Talon + 5,Oper_Tipo, Oper_Cliente))) AS "GIRADO",
((SELECT SUM(NETO)FROM(select
REPLACE(GLIN_FECHA,'/','/') AS FECHA,GLIN_N_FAC AS "ALBARAN",
GLIN_CLIENTE AS "COD CLIENTE",MCL_NOMBRE AS "NOMBRE CLIENTE",
((SELECT sum((((lin_uni * lin_p_venta) - (lin_uni* lin_p_venta) *(lin_descuento_t /100)) * (lin_iva_v/100))+
((lin_uni * lin_p_venta) - (lin_uni* lin_p_venta) *(lin_descuento_t /100)))from linfac where glin_n_fac = lin_n_fac ))-
((SELECT sum((((lin_uni * lin_p_venta) - (lin_uni* lin_p_venta) *(lin_descuento_t /100)) * (lin_iva_v/100))+
((lin_uni * lin_p_venta) - (lin_uni* lin_p_venta) *(lin_descuento_t /100)))from linfac where glin_n_fac = lin_n_fac ) *(MCL_DTO_P_P/100))AS NETO
from glinfac
JOIN CLIENT01 ON MCL_N_CLIENTE =GLIN_CLIENTE
JOIN VENDEDOR ON VEN_CODIGO = GLIN_VENDEDOR
JOIN formapag ON FORP_CODIGO = glin_con_cred
Join Aida On Aida_Codigo = Glin_Alma
Where  Glin_ESTADO = 6
And Glin_Cliente = 430012017
order BY glin_N_FAC))) AS "PENDIENTE"
From Client01 Where Mcl_N_Cliente = 430012017;


con esta consulta obtengo el siguiente dato:


cod cliente:430012017

NOMBRE CLIENTE:INJAR, S.A.

RIESGO EN FICHA:500000

FAC SIN COBRAR: 243539,56

GIRADO:276061,05

PENDIENTE: 32801,607304


QUIERO SUMAR FAC SIN COBRAR + GIRADO +
PENDIENTE
y no tengo ni idea de como hacerlo, alguien me puede ayudar. GRACIAS Y UN SALUDO
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias

SUMAR TOTALES

Publicado por Isaias (1136 intervenciones) el 06/09/2017 19:57:11
¿Podrias indicarnos que motor de base de datos estas ocupando?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

SUMAR TOTALES

Publicado por NICO (12 intervenciones) el 07/09/2017 08:08:17
Ya esta solucionado, era una tonteria.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

SUMAR TOTALES

Publicado por leonardo_josue (1139 intervenciones) el 07/09/2017 19:55:29
Hola Nico.

Ya que abriste una pregunta y tú mismo encontraste la respuesta, debería de compartir la solución con el foro, por si alguien más comete la misma "tontería".

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Revisar política de publicidad