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

Referencias Cruzadas SQL Server 2005

Estas en el tema de Referencias Cruzadas SQL Server 2005 en el foro de SQL Server en Foros del Web. Saludos, he buscado informacion en el foro pero no encuentro nada que me ayude, la informacion que consigo me parece difiere una de la otra. ...
  #1 (permalink)  
Antiguo 17/06/2011, 16:39
 
Fecha de Ingreso: febrero-2009
Mensajes: 64
Antigüedad: 15 años, 2 meses
Puntos: 1
Sonrisa Referencias Cruzadas SQL Server 2005

Saludos, he buscado informacion en el foro pero no encuentro nada que me ayude, la informacion que consigo me parece difiere una de la otra. Vengo de trabajar en access y estoy empezando en esto de SQL Server y en cuanto a consultas de referencias cruzadas las diferencias son grandisimas, paso al problema.

Tengo esta consulta:

TRANSFORM Sum(Contar) AS Alertas
SELECT DateName( Month, Fch) + '-' + DateName( Year, Fch) AS Mes, Count(BDSMSEnv.Fch) AS Contar, BDSMSEnv.Est AS Estatus
FROM BDEnv
GROUP BY DateName( Month, Fch) + '-' + DateName( Year, Fch ), BDSMSEnv.Est
HAVING (((BDSMSEnv.Est)='Enviado'))
UNION ALL
SELECT DateName( Month, FchRec) + '-' + DateName( Year, FchRec) AS Mes, Count(Month([FchRec])) AS Contar, 'Recibido' AS Estatus
FROM BDRec
GROUP BY DateName( Month, FchRec) + '-' + DateName( Year, FchRec)
ORDER BY Estatus
PIVOT Mes

Si elimino la primera y la ultima linea funciona sin problemas (esto a los efectos de validar que los campos existen y la instruccion esta bien formulada), pero con el TRANSFORM y el PIVOT me devuelve un error:

Error: Incorrect syntax near 'Contar'.
Incorrect syntax near the keyword 'PIVOT'.
Source: .Net SqlClient Data Provider

Estoy probando en el AspNET SQL 2000/2005 Ent. Manager, del Panel de control de mi hosting, por si sirve eso de algo.

Consulte estos link (En caso de que alguien tenga el mismo problema):
http://www.elguille.info/NET/ADONET/...ot_Unpivot.htm
http://www.maestrosdelweb.com/editorial/tutsql8/
http://www.webtaller.com/construccio...adas-sql-2.php

Gracias de antemano
  #2 (permalink)  
Antiguo 17/06/2011, 21:19
 
Fecha de Ingreso: febrero-2009
Mensajes: 64
Antigüedad: 15 años, 2 meses
Puntos: 1
Respuesta: Referencias Cruzadas SQL Server 2005

Resuelto, coloco el codigo en caso de que alguien esta tras algo parecido:

set LANGUAGE Spanish
SELECT Estatus, [Mayo-2011] AS Mayo2011, [Junio-2011] AS Junio2011
FROM
(SELECT DateName( Month, Fch) + '-' + DateName( Year, Fch) AS Mes, Count(BDEnv.Fch) AS Contar, BDEnv.Est AS Estatus
FROM BDEnv
GROUP BY DateName( Month, Fch) + '-' + DateName( Year, Fch ), BDEnv.Est
HAVING (((BDEnv.Est)='Enviado'))
UNION ALL
SELECT DateName( Month, FchRec) + '-' + DateName( Year, FchRec) AS Mes, Count(Month([FchRec])) AS Contar, 'Recibido' AS Estatus
FROM BDRec
GROUP BY DateName( Month, FchRec) + '-' + DateName( Year, FchRec)
) Temp
PIVOT
(Sum(Contar)
FOR Mes IN
([Mayo-2011], [Junio-2011])
) AS pvt

Saludos

Etiquetas: cruzadas, referencias, server, sql
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 19:29.