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

Query algo compleja

Estas en el tema de Query algo compleja en el foro de SQL Server en Foros del Web. Hola: Necesito obtener lo siguiente en un Select para luego manejar este resultado en una tabla temporal: Producto, Plan Mensual, Plan Anual La información la ...
  #1 (permalink)  
Antiguo 10/09/2012, 06:52
Usuario no validado
 
Fecha de Ingreso: abril-2010
Ubicación: La habana
Mensajes: 229
Antigüedad: 14 años, 7 meses
Puntos: 4
Query algo compleja

Hola:

Necesito obtener lo siguiente en un Select para luego manejar este resultado en una tabla temporal:
Producto, Plan Mensual, Plan Anual
La información la tengo que sacar de aquí:
EstablecimientoId PlanId RevisionId ProductoId ProveedorId PeriodoId PlanCantidad
1222 126 192 2781 4829 61 0,00
1222 126 192 2781 4829 62 0,00
1222 126 192 2781 4829 63 0,00
1222 126 192 2781 4829 65 0,00
1222 126 192 2781 4829 66 0,00
1222 126 192 2781 4829 67 0,00
1222 126 192 2781 4829 70 0,00
1222 126 192 2781 4829 71 0,00
1222 126 192 2781 4829 72 0,00
1222 126 192 2781 4829 74 0,00
1222 126 192 2781 4829 75 0,00
1222 126 192 2781 4829 76 0,00
1222 126 192 4010 1322 61 0,00
1222 126 192 4010 1322 62 0,00
1222 126 192 4010 1322 63 0,00
1222 126 192 4010 1322 65 0,00
1222 126 192 4010 1322 66 0,00
1222 126 192 4010 1322 67 0,00
1222 126 192 4010 1322 70 0,00
1222 126 192 4010 1322 71 0,00
1222 126 192 4010 1322 72 0,00
1222 126 192 4010 1322 74 0,00
1222 126 192 4010 1322 75 0,00
1222 126 192 4010 1322 76 0,00
Por ahora tengo estas dos querys separadas lo que no consigo es hacerlo todo en una solo mostrando lo que puse al inicio que será tabla temporal:
Código:
SET language 'spanish' 
SELECT  [EstablecimientoId] ,
        [PlanId] ,
        [RevisionId] ,
        [ProductoId] ,
        [ProveedorId] ,
        pp.PeriodoId ,
        [PlanCantidad] AS 'Plan Mensual' ,       
        ppp.Descripcion
FROM    [PlanComprasNuevo].[dbo].[PlanProducto] pp
        INNER JOIN [PlanComprasNuevo].dbo.fnDame_PeriodoPlanProducto (126) ppp ON ppp.PeriodoId = pp.PeriodoId
WHERE   EstablecimientoId = 1222
        AND PlanId = 126
        AND RevisionId = 192
        AND ppp.Descripcion = CONVERT(VARCHAR(255), DATENAME(MONTH, GETDATE()))
GROUP BY EstablecimientoId ,
        [PlanId] ,
        [RevisionId] ,
        [ProductoId] ,
        [ProveedorId] ,
        pp.PeriodoId ,
        [PlanCantidad],
        ppp.Descripcion


SELECT [EstablecimientoId]
      ,[PlanId]
      ,[RevisionId]
      ,[ProductoId]
      ,[ProveedorId]
      ,SUM (PlanCantidad) AS 'Plan Anual'
      
  FROM [PlanComprasNuevo].[dbo].[PlanProducto]
  WHERE EstablecimientoId = 1222
  AND PlanId = 126
  AND RevisionId = 192
    
  GROUP BY 
  [EstablecimientoId]
      ,[PlanId]
      ,[RevisionId]
      ,[ProductoId]
      ,[ProveedorId]
Para obtener la tabla que deseo no puedo hacer uso de CTE porque ya lo tengo implementado en la query en la que usaré la tabla temporal.

Salu2 y gracias de antemano
  #2 (permalink)  
Antiguo 10/09/2012, 08:29
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: Query algo compleja

usa un union para pegar tus 2 queries

insert into #temp
select * from tabla
union
select * from tabla

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

Etiquetas: compleja, query, select, tabla
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 09:21.