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









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.
Publicar un comentario en la entrada