Esto es una consulta...

. 12 noviembre, 2004

y lo demás son tonterias

SELECT .ZZTableEAreas.DepCod, .ZZTableDepar.DepDes, .ZZTableDepar.DepTxCod, .XXTABLAOferta.OfeTxCod, .XXTABLAProyec.ProTxCod, .XXTABLAProyec.ProAcro, .XXTABLAPerson.PerNombre, SUM(ISNULL( .XXTABLAProAPer.PAPHorRev, 0)) AS Expr1, .ZZTableCatego.CatTxCod, .ZZTableECatTar.ECTImpo, '' AS Estado, 0 AS Expr2, ZZTableEAreas1.DepCod AS Expr3 FROM .XXTABLAProAPer INNER JOIN .XXTABLAProyec ON .XXTABLAProAPer.ProCod = .XXTABLAProyec.ProCod INNER JOIN .XXTABLAOferta ON .XXTABLAProyec.OfeCod = .XXTABLAOferta.OfeCod INNER JOIN .XXTABLAPerson ON .XXTABLAProAPer.PerCod = .XXTABLAPerson.PerCod INNER JOIN .ZZTableEAreas ON .XXTABLAProyec.EjeCod = .ZZTableEAreas.EjeCod AND .XXTABLAProyec.AreCod = .ZZTableEAreas.AreCod INNER JOIN .ZZTableCatego ON .XXTABLAProAPer.CatCod = .ZZTableCatego.CatCod INNER JOIN .ZZTableECatTar ON .XXTABLAProAPer.CatCod = .ZZTableECatTar.CatCod AND .XXTABLAProAPer.PAPAnio = .ZZTableECatTar.EjeCod INNER JOIN .ZZTableDepar ON .ZZTableEAreas.DepCod = .ZZTableDepar.DepCod INNER JOIN .XXTABLAPerEArea ON .XXTABLAPerson.PerCod = .XXTABLAPerEArea.PerCod INNER JOIN .ZZTableEAreas ZZTableEAreas1 ON .XXTABLAPerEArea.EjeCod = ZZTableEAreas1.EjeCod AND .XXTABLAPerEArea.AreCod = ZZTableEAreas1.AreCod WHERE ( .XXTABLAProAPer.PAPAnio = 2004) AND ( .ZZTableEAreas.DepCod = 2) AND ( .XXTABLAProAPer.PAPAnio = 2004) AND ( .ZZTableEAreas.DepCod = 2) AND ( .ZZTableECatTar.TarCod = 11) AND (2004 BETWEEN { fn YEAR( .XXTABLAPerEArea.PEAFDesde) } AND { fn YEAR( .XXTABLAPerEArea.PEAFHasta) }) OR (2004 >= .XXTABLAPerEArea.PEAFDesde) AND ( .XXTABLAPerEArea.PEAFHasta IS NULL) AND PEAFDesde IN (SELECT MAX(PEAFDesde) FROM XXTABLAPerEArea WHERE (2004 BETWEEN { fn YEAR( .XXTABLAPerEArea.PEAFDesde) } AND { fn YEAR( .XXTABLAPerEArea.PEAFHasta) }) OR (2004 >= .XXTABLAPerEArea.PEAFDesde) AND ( .XXTABLAPerEArea.PEAFHasta IS NULL) AND XXTABLAPerson.PerCod = XXTABLAPerEArea.PerCod) GROUP BY .ZZTableEAreas.DepCod, .ZZTableDepar.DepDes, .ZZTableDepar.DepTxCod, .XXTABLAOferta.OfeTxCod, .XXTABLAProyec.ProTxCod, .XXTABLAProyec.ProAcro, .XXTABLAPerson.PerNombre, .ZZTableCatego.CatTxCod, .ZZTableECatTar.ECTImpo, ZZTableEAreas1.DepCod UNION SELECT DISTINCT .ZZTableEAreas.DepCod, .ZZTableDepar.DepDes, .ZZTableDepar.DepTxCod, .XXTABLAOferta.OfeTxCod, .XXTABLAProyec.ProTxCod, .XXTABLAProyec.ProAcro, .XXTABLAPerson.PerNombre, SUM(ISNULL( .XXTABLAProAPer.PAPHorRev, 0)) AS Expr1, .ZZTableCatego.CatTxCod, .ZZTableECatTar.ECTImpo, '' AS Estado, 0 AS Expr2, 0 AS Expr3 FROM .XXTABLAProAPer INNER JOIN .XXTABLAProyec ON .XXTABLAProAPer.ProCod = .XXTABLAProyec.ProCod INNER JOIN .XXTABLAOferta ON .XXTABLAProyec.OfeCod = .XXTABLAOferta.OfeCod INNER JOIN .XXTABLAPerson ON .XXTABLAProAPer.PerCod = .XXTABLAPerson.PerCod INNER JOIN .ZZTableEAreas ON .XXTABLAProyec.EjeCod = .ZZTableEAreas.EjeCod AND .XXTABLAProyec.AreCod = .ZZTableEAreas.AreCod INNER JOIN .ZZTableCatego ON .XXTABLAProAPer.CatCod = .ZZTableCatego.CatCod INNER JOIN .ZZTableECatTar ON .XXTABLAProAPer.CatCod = .ZZTableECatTar.CatCod AND .XXTABLAProAPer.PAPAnio = .ZZTableECatTar.EjeCod INNER JOIN .ZZTableDepar ON .ZZTableEAreas.DepCod = .ZZTableDepar.DepCod INNER JOIN .XXTABLAPerEArea ON .XXTABLAPerson.PerCod = .XXTABLAPerEArea.PerCod INNER JOIN .ZZTableEAreas ZZTableEAreas1 ON .XXTABLAPerEArea.EjeCod = ZZTableEAreas1.EjeCod AND .XXTABLAPerEArea.AreCod = ZZTableEAreas1.AreCod WHERE ( .XXTABLAProAPer.PAPAnio = 2004) AND ( .ZZTableEAreas.DepCod = 2) AND ( .ZZTableEAreas.DepCod = 2) AND ( .ZZTableECatTar.TarCod = 11) AND ( .XXTABLAProAPer.PerCod IN (SELECT DISTINCT PerCOd FROM XXTABLAPerEArea WHERE PerCod NOT IN (SELECT DISTINCT PerCod FROM .XXTABLAPerEArea WHERE (2004 BETWEEN YEAR(PEAFDesde) AND YEAR(PEAFHasta)) OR (2004 >= YEAR(PEAFDesde) AND PEAFHasta IS NULL)))) GROUP BY .ZZTableEAreas.DepCod, .ZZTableDepar.DepDes, .ZZTableDepar.DepTxCod, .XXTABLAOferta.OfeTxCod, .XXTABLAProyec.ProTxCod, .XXTABLAProyec.ProAcro, .XXTABLAPerson.PerNombre, .ZZTableCatego.CatTxCod, .ZZTableECatTar.ECTImpo, ZZTableEAreas1.DepCod, .XXTABLAProAPEr.PAPAnio ORDER BY .ZZTableEAreas.DepCod, .ZZTableDepar.DepDes, .ZZTableDepar.DepTxCod, .XXTABLAOferta.OfeTxCod, .XXTABLAProyec.ProTxCod, .XXTABLAPerson.PerNombre

Feed 0 comentarios:

Publicar un comentario en la entrada

Este blog ya no pertenece a la iniciativa do-follow. En su lugar todos los enlaces tienen rel="no-follow"

No lo dudes y dame tu opinión, siempre será bien recibida y seguro que no tardo nada en contestarte. Recuerda que he habilitado nofollow en los enlaces, de forma que si lo que pretendes es hacer spam para SEO, no te servirá de nada.

 

^