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

Ayuda en un procedimiento almacenado

Estas en el tema de Ayuda en un procedimiento almacenado en el foro de SQL Server en Foros del Web. He creado el siguiente procedimiento almacenado para este enunciado: Nombre del pais junto con el numero medio de pernoctaciones y reclamaciones en los años 1997 ...
  #1 (permalink)  
Antiguo 06/03/2008, 04:42
 
Fecha de Ingreso: diciembre-2006
Mensajes: 3
Antigüedad: 17 años, 5 meses
Puntos: 0
Ayuda en un procedimiento almacenado

He creado el siguiente procedimiento almacenado para este enunciado:

Nombre del pais junto con el numero medio de pernoctaciones y
reclamaciones en los años 1997 y 1998. Ademas debemos calcular
para cada pais la media de llegadas y el trimestre en el cual hubo
mas reclamaciones para dichos años.


Código PHP:
CREATE PROCEDURE CALCULO_AVG
AS


SELECT   PRO.PAIS  PAIS,  AVG (P.PERNOCTACIONESMEDIA_PERNOCTACIONESAVG R.CANTIDADMEDIA_RECLAMACIONES
 
AVG (LL.CANTIDADMEDIA_LLEGADAS
FROM PERNOCTACIONES P
PROCEDENCIA PRORECLAMACIONES RLLEGADAS LLMESES
WHERE P
.ANO BETWEEN 1997 AND 1998 AND PRO.CODIGOP.PROCEDENCIA 
AND P.PROCEDENCIAR.PROCEDENCIA AND R.PROCEDENCIALL.PROCEDENCIA 
AND P.ANO=R.AÑO AND MESES.NUMERO R.MES
GROUP BY PRO
.PAIS

SELECT  TRIMESTRE 
AS TRIMESTRE_CON_MAS_RECLAMACIONES
FROM MESES
GROUP BY TRIMESTRE
HAVING TRIMESTRE
=(SELECT TRIMESTRE
                     FROM MESES
,RECLAMACIONES
                     WHERE AÑO BETWEEN 1997 
AND 1998 AND MESES.NUMERO=RECLAMACIONES.MES
                     GROUP BY TRIMESTRE 
                     HAVING SUM 
(CANTIDAD)=(SELECT TOP 1  SUM(CANTIDAD)
                                             
FROM MESESRECLAMACIONES
                                             WHERE AÑO BETWEEN 1997 
AND 1998 AND MESES.NUMERO=RECLAMACIONES.MES
                                             GROUP BY TRIMESTRE
                                             ORDER BY 1 DESC
))

EXEC CALCULO_AVG
El problema es que me pide los datos para cada uno de los años, no el total de sumar los dos años. Debe aparecer algo asi:

Año Pais media_pernocta media_reclama media_llegadas trimestre
1997 España 3843 439843 49308 1
1997 Francia 438439 43894 9595 3
...
...
1998 España 49382 7687 2345 3
1998 Francia


¿Me echais una mano en lo que tendria que modificar?
  #2 (permalink)  
Antiguo 17/03/2008, 21:59
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Re: Ayuda en un procedimiento almacenado

Con una revisión somera no puedo detectar el por qué no puedas utilizar

SELECT P.ANO, PRO.PAIS PAIS, AVG, .....
....
GROUP BY P.ANO, PRO.PAIS
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
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 13:19.