Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

SUma columna

Estas en el tema de SUma columna en el foro de SQL Server en Foros del Web. Estimados amigos no me llega a sumar una columna monto, me gustaria saber la suma general de esa columna, este es mi codigo me sale ...
  #1 (permalink)  
Antiguo 30/05/2014, 10:41
 
Fecha de Ingreso: enero-2012
Mensajes: 158
Antigüedad: 12 años, 2 meses
Puntos: 1
Información SUma columna

Estimados amigos no me llega a sumar una columna monto, me gustaria saber la suma general de esa columna, este es mi codigo me sale un error, por favor ayudenme

Código SQL:
Ver original
  1. SELECT    ALUMNO.ALUMNO, ALUMNO.NOMBRE, CARRERA.DESCRIPCION, ALUMNO_CARRERA_PERIODO.GRUPO,OBLIGACIONES.PERIODO,
  2. OBLIGACIONES.NUMERO_CUOTA, CONCEPTO.TIPO_CONCEPTO , SUM(OBLIGACIONES.MONTO),
  3. CONVERT(VARCHAR,OBLIGACIONES.FECHA_VENCIMIENTO, 112),OBLIGACIONES.INSTITUCION, OBLIGACIONES.CANTIDAD_TOTAL
  4. FROM         OBLIGACIONES INNER JOIN
  5.                       PERSONA ON OBLIGACIONES.PERSONA = PERSONA.PERSONA INNER JOIN
  6.                       ALUMNO ON ALUMNO.ALUMNO = PERSONA.PERSONA INNER JOIN
  7.                       INSTITUCION ON INSTITUCION.INSTITUCION = OBLIGACIONES.INSTITUCION INNER JOIN
  8.                       CARRERA ON CARRERA.CARRERA = OBLIGACIONES.CARRERA INNER JOIN ALUMNO_CARRERA_PERIODO
  9. ON ALUMNO_CARRERA_PERIODO.ALUMNO=ALUMNO.ALUMNO INNER JOIN CONCEPTO ON CONCEPTO.CONCEPTO=OBLIGACIONES.CONCEPTO
  10. WHERE     (OBLIGACIONES.CANTIDAD_TOTAL IS NULL) AND (OBLIGACIONES.FECHA_VENCIMIENTO >= '30/06/2014') AND (OBLIGACIONES.CONCEPTO = '2621')
  11.                       AND (OBLIGACIONES.INSTITUCION = '54') GROUP BY OBLIGACIONES.INSTITUCION
  #2 (permalink)  
Antiguo 30/05/2014, 10:50
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: SUma columna

Cita:
me sale un error
Ajá... ¿y qué se supone que dice el error?

Normalmente el mensaje de error contiene la suficiente información como para saber hacia donde ir, pero si no lo compartes, es difícil que podamos adivinar...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 30/05/2014, 10:51
 
Fecha de Ingreso: enero-2012
Mensajes: 158
Antigüedad: 12 años, 2 meses
Puntos: 1
Información Respuesta: SUma columna

Mens. 8120, Nivel 16, Estado 1, Línea 1
La columna 'ALUMNO.ALUMNO' de la lista de selección no es válida, porque no está contenida en una función de agregado ni en la cláusula GROUP BY.
  #4 (permalink)  
Antiguo 30/05/2014, 10:55
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: SUma columna

Código SQL:
Ver original
  1. SELECT    ALUMNO.ALUMNO, ALUMNO.NOMBRE, CARRERA.DESCRIPCION, ALUMNO_CARRERA_PERIODO.GRUPO,OBLIGACIONES.PERIODO,
  2. OBLIGACIONES.NUMERO_CUOTA, CONCEPTO.TIPO_CONCEPTO , SUM(OBLIGACIONES.MONTO),
  3. CONVERT(VARCHAR,OBLIGACIONES.FECHA_VENCIMIENTO, 112),OBLIGACIONES.INSTITUCION, OBLIGACIONES.CANTIDAD_TOTAL
  4. FROM         OBLIGACIONES INNER JOIN
  5.                       PERSONA ON OBLIGACIONES.PERSONA = PERSONA.PERSONA INNER JOIN
  6.                       ALUMNO ON ALUMNO.ALUMNO = PERSONA.PERSONA INNER JOIN
  7.                       INSTITUCION ON INSTITUCION.INSTITUCION = OBLIGACIONES.INSTITUCION INNER JOIN
  8.                       CARRERA ON CARRERA.CARRERA = OBLIGACIONES.CARRERA INNER JOIN ALUMNO_CARRERA_PERIODO
  9. ON ALUMNO_CARRERA_PERIODO.ALUMNO=ALUMNO.ALUMNO INNER JOIN CONCEPTO ON CONCEPTO.CONCEPTO=OBLIGACIONES.CONCEPTO
  10. WHERE     (OBLIGACIONES.CANTIDAD_TOTAL IS NULL) AND (OBLIGACIONES.FECHA_VENCIMIENTO >= '30/06/2014') AND (OBLIGACIONES.CONCEPTO = '2621')
  11.                       AND (OBLIGACIONES.INSTITUCION = '54') GROUP BY OBLIGACIONES.INSTITUCION,ALUMNO.ALUMNO, ALUMNO.NOMBRE, CARRERA.DESCRIPCION, ALUMNO_CARRERA_PERIODO.GRUPO,OBLIGACIONES.PERIODO,
  12. OBLIGACIONES.NUMERO_CUOTA, CONCEPTO.TIPO_CONCEPTO,OBLIGACIONES.CANTIDAD_TOTAL

prueba con algo asi :)
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 30/05/2014, 10:57
 
Fecha de Ingreso: enero-2012
Mensajes: 158
Antigüedad: 12 años, 2 meses
Puntos: 1
Información Respuesta: SUma columna

Lo pongo asi pero no me funciona
Código XML:
Ver original
  1. SELECT    SUM(OBLIGACIONES.MONTO), ALUMNO.ALUMNO, ALUMNO.NOMBRE, CARRERA.DESCRIPCION, ALUMNO_CARRERA_PERIODO.GRUPO,OBLIGACIONES.PERIODO,
  2. OBLIGACIONES.NUMERO_CUOTA, CONCEPTO.TIPO_CONCEPTO ,
  3. CONVERT(varchar,OBLIGACIONES.FECHA_VENCIMIENTO, 112),OBLIGACIONES.INSTITUCION, OBLIGACIONES.CANTIDAD_TOTAL
  4. FROM         OBLIGACIONES INNER JOIN
  5.                       PERSONA ON OBLIGACIONES.PERSONA = PERSONA.PERSONA INNER JOIN
  6.                       ALUMNO ON ALUMNO.ALUMNO = PERSONA.PERSONA INNER JOIN
  7.                       INSTITUCION ON INSTITUCION.INSTITUCION = OBLIGACIONES.INSTITUCION INNER JOIN
  8.                       CARRERA ON CARRERA.CARRERA = OBLIGACIONES.CARRERA INNER JOIN ALUMNO_CARRERA_PERIODO
  9. ON ALUMNO_CARRERA_PERIODO.ALUMNO=ALUMNO.ALUMNO INNER JOIN CONCEPTO ON CONCEPTO.CONCEPTO=OBLIGACIONES.CONCEPTO
  10. WHERE     (OBLIGACIONES.CANTIDAD_TOTAL IS NULL) AND (OBLIGACIONES.FECHA_VENCIMIENTO >= '30/06/2014') AND (OBLIGACIONES.CONCEPTO = '2621')
  11.                       AND (OBLIGACIONES.INSTITUCION = '54') GROUP BY OBLIGACIONES.INSTITUCION,ALUMNO.ALUMNO, ALUMNO.NOMBRE, CARRERA.DESCRIPCION, ALUMNO_CARRERA_PERIODO.GRUPO,OBLIGACIONES.PERIODO,
  12. OBLIGACIONES.NUMERO_CUOTA, CONCEPTO.TIPO_CONCEPTO,OBLIGACIONES.CANTIDAD_TOTAL, OBLIGACIONES.FECHA_VENCIMIENTO
  #6 (permalink)  
Antiguo 30/05/2014, 11:00
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: SUma columna

que error te manda???
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #7 (permalink)  
Antiguo 30/05/2014, 11:28
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: SUma columna

Cita:
Iniciado por neocalichin Ver Mensaje
Mens. 8120, Nivel 16, Estado 1, Línea 1
La columna 'ALUMNO.ALUMNO' de la lista de selección no es válida, porque no está contenida en una función de agregado ni en la cláusula GROUP BY.
Para que quede claro: Toda columna del SELECT donde no se aplica una función de agregación, debe estar listada en el GROUP BY.
Eso es lo que sucede.

Ahora bien, ¿te está dando un nuevo error o es lo mismo?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #8 (permalink)  
Antiguo 30/05/2014, 11:37
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: SUma columna

Este post debería llamarse, "A prueba y error"
__________________
MCTS Isaias Islas
  #9 (permalink)  
Antiguo 30/05/2014, 11:38
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: SUma columna

Cita:
Iniciado por iislas Ver Mensaje
Este post debería llamarse, "A prueba y error"

__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #10 (permalink)  
Antiguo 30/05/2014, 11:40
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: SUma columna

Yendo a tu query, el primer problema que yo le veo es lo confusa que resulta, en especial por que ni te molestas usar alias en las tablas, lo que hace una sintaxis sucia. Además tampoco lo pones en las columnas, con lo que no puedes aplicar correctamente el agrupamiento.
Yo empezaría por escribir más ordenado:
Código SQL:
Ver original
  1. SELECT
  2.    SUM(O.MONTO) Obligaciones,
  3.    A.ALUMNO,
  4.    A.NOMBRE,
  5.    C.DESCRIPCION,
  6.    ACP.GRUPO,
  7.    O.PERIODO,
  8.    O.NUMERO_CUOTA,
  9.    CO.TIPO_CONCEPTO ,
  10.    CONVERT(VARCHAR, O.FECHA_VENCIMIENTO, 112) fecha_vendimiento,
  11.    O.INSTITUCION,
  12.    O.CANTIDAD_TOTAL
  13. FROM
  14.    OBLIGACIONES O
  15.    INNER JOIN PERSONA P ON O.PERSONA = P.PERSONA
  16.    INNER JOIN ALUMNO A ON A.ALUMNO = P.PERSONA
  17.    INNER JOIN INSTITUCION I ON I.INSTITUCION = O.INSTITUCION
  18.    INNER JOIN CARRERA CA ON CA.CARRERA = O.CARRERA
  19.    INNER JOIN ALUMNO_CARRERA_PERIODO ACP ON ACP.ALUMNO = A.ALUMNO
  20.    INNER JOIN CONCEPTO CO ON CO.CONCEPTO = O.CONCEPTO
  21.  
  22. WHERE
  23.    (O.CANTIDAD_TOTAL IS NULL)
  24.    AND (O.FECHA_VENCIMIENTO >= '30/06/2014')
  25.    AND (O.CONCEPTO = '2621')
  26.    AND (O.INSTITUCION = '54')
  27. GROUP BY
  28.    A.ALUMNO,
  29.    A.NOMBRE,
  30.    C.DESCRIPCION,
  31.    ACP.GRUPO,
  32.    O.PERIODO,
  33.    O.NUMERO_CUOTA,
  34.    CO.TIPO_CONCEPTO ,
  35.    CONVERT(VARCHAR, O.FECHA_VENCIMIENTO, 112),
  36.    O.INSTITUCION,
  37.    O.CANTIDAD_TOTAL

Al menos así podrías entender lo que tienes.

Finalmente, ¿en serio O.CANTIDAD_TOTAL puede ser NULL? ¿en un INNER JOIN?
¿Guardas nulos por default allí?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #11 (permalink)  
Antiguo 30/05/2014, 12:06
 
Fecha de Ingreso: enero-2012
Mensajes: 158
Antigüedad: 12 años, 2 meses
Puntos: 1
Información Respuesta: SUma columna

me sale este error

Mens. 4104, Nivel 16, Estado 1, Línea 1
El identificador formado por varias partes "C.DESCRIPCION" no se pudo enlazar.
Mens. 4104, Nivel 16, Estado 1, Línea 1
El identificador formado por varias partes "C.DESCRIPCION" no se pudo enlazar.
  #12 (permalink)  
Antiguo 30/05/2014, 12:35
 
Fecha de Ingreso: enero-2012
Mensajes: 158
Antigüedad: 12 años, 2 meses
Puntos: 1
Información Respuesta: SUma columna

hOLA NO ME ESTA SUMANDO QUE HAGO POR FAVOR ES URGENTE

Código SQL:
Ver original
  1. SELECT COUNT(*),
  2.    SUM(O.MONTO) Obligaciones,
  3.    A.ALUMNO,
  4.    A.NOMBRE,
  5.    CA.DESCRIPCION,
  6.    ACP.GRUPO,
  7.    O.PERIODO,
  8.    O.NUMERO_CUOTA,
  9.    CO.TIPO_CONCEPTO ,
  10.    CONVERT(VARCHAR, O.FECHA_VENCIMIENTO, 112) AS fecha_vencimiento,
  11.    O.INSTITUCION,
  12.    O.CANTIDAD_TOTAL
  13.  
  14. FROM         OBLIGACIONES O INNER JOIN
  15.                       PERSONA  P ON O.PERSONA = P.PERSONA INNER JOIN
  16.                       ALUMNO A ON A.ALUMNO = P.PERSONA INNER JOIN
  17.                       INSTITUCION I ON I.INSTITUCION = O.INSTITUCION INNER JOIN
  18.                       CARRERA CA ON CA.CARRERA = O.CARRERA INNER JOIN ALUMNO_CARRERA_PERIODO ACP
  19. ON ACP.ALUMNO=A.ALUMNO INNER JOIN CONCEPTO CO ON CO.CONCEPTO=O.CONCEPTO
  20. WHERE
  21.    (O.CANTIDAD_TOTAL IS NULL)
  22.    AND (O.FECHA_VENCIMIENTO >= '30/06/2014')
  23.    AND (O.CONCEPTO = '2621')
  24.    AND (O.INSTITUCION = '54')
  25. GROUP BY
  26.    A.ALUMNO,
  27.    A.NOMBRE,
  28.    CA.DESCRIPCION,
  29.    ACP.GRUPO,
  30.    O.PERIODO,
  31.    O.NUMERO_CUOTA,
  32.    CO.TIPO_CONCEPTO ,
  33.    CONVERT(VARCHAR, O.FECHA_VENCIMIENTO, 112),
  34.    O.INSTITUCION,
  35.    O.CANTIDAD_TOTAL
  #13 (permalink)  
Antiguo 30/05/2014, 13:06
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: SUma columna

Con ayuda de Google:

http://support.microsoft.com/kb/2352413/es

http://forums.asp.net/t/1807358.aspx...+Query+Problem

Mira si te sirve alguna de ellas. AL menos como orientación.


PD: Las cosas urgentes no existen en FDW. Lo hacemos en el tiempo que podemos. Nadie TRABAJA aquí. Sólo participamos por vocación.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #14 (permalink)  
Antiguo 30/05/2014, 13:52
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: SUma columna

Cita:
Iniciado por neocalichin Ver Mensaje
hOLA NO ME ESTA SUMANDO QUE HAGO POR FAVOR ES URGENTE
Cuanto $$$ por quitarte la urgencia ;)
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Etiquetas: columna, select, suma
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:32.