1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162
| WITH
Object3 AS (
SELECT DISTINCT
LEFT(Column5,?) as Column11,
Column1,
Column3
FROM Object1
WHERE Column1 = ?
AND (Column6 = ? AND (Column7 > (SELECT Function3(Column7) FROM Object2))) OR (Column6 = ? AND (Column8 > (SELECT Function3(Column7) FROM Object2)))
),
Object4 AS (
SELECT
LEFT(Column5,?) as Column11,
Object1.Column1,
Object1.Column3,
Object1.Column2,
Column9,
Column10,
Column4,
CASE
WHEN LEFT(Object1.Column2,?) in (?) THEN Function2(?,Object1.Column3)
WHEN LEFT(Object1.Column2,?) in (?) THEN Function2(?,Object1.Column3)
WHEN LEFT(Object1.Column2,?) in (?) THEN Function2(?,Object1.Column3)
WHEN LEFT(Object1.Column2,?) in (?) THEN Function2(?,Object1.Column3)
ELSE ?
END as Column12,
CASE
WHEN LEFT(Object1.Column2,?) in (?) THEN Function2(?,Object1.Column3)
WHEN LEFT(Object1.Column2,?) in (?) THEN Function2(?,Object1.Column3)
WHEN LEFT(Object1.Column2,?) in (?) THEN Function2(?,Object1.Column3)
WHEN LEFT(Object1.Column2,?) in (?) THEN Function2(?,Object1.Column3)
ELSE ?
END as Column13
from Object1
inner join Object3 ON Object3.Column11 = left(Column5,?) AND Object3.Column1 = Object1.Column1 AND Object1.Column3 = Object3.Column3
WHERE Object1.Column1 = ?
)
,Object5 AS (
SELECT DISTINCT
Object4.Column11,
Object4.Column1,
Object4.Column3,
Object4.Column2,
Column12,
Column13,
Column14,
Column15,
Column16
from Object4
left outer join
(SELECT Column11,
Column1,
Column2,
Function4(Column9) as Column14
FROM Object4
GROUP BY Column11,
Column1,
Column2
) as Object6
ON Object4.Column11 = Object6.Column11 AND Object4.Column1 = Object6.Column1 AND Object4.Column2 = Object6.Column2
left outer join
(SELECT Column11,
Column1,
Column2,
Function4(Column10) as Column15
FROM Object4
GROUP BY Column11,
Column1,
Column2
) as Object7
ON Object4.Column11 = Object7.Column11 AND Object4.Column1 = Object7.Column1 AND Object4.Column2 = Object7.Column2
left outer join
(SELECT Column11,
Column1,
Column2,
Function4(Column4) as Column16
FROM Object4
GROUP BY Column11,
Column1,
Column2
) as Object8
ON Object4.Column11 = Object8.Column11 AND Object4.Column1 = Object8.Column1 AND Object4.Column2 = Object8.Column2
)
SELECT
Object5.Column11,
Object5.Column1,
Column2,
Object5.Column3,
CAST(Column14 AS decimal(15,2)) AS Column14,
CAST(Column15 AS decimal(15,2)) AS Column15,
CAST(Column16 AS decimal(15,2)) AS Column16,
CASE
WHEN Column17 > ? THEN CAST((Column14 / Column17) AS decimal(15, 10))
ELSE ?
END as Column18,
CASE
WHEN Column19 > ? THEN CAST((Column15 / Column19) AS decimal(15, 10))
ELSE ?
END as Column20,
CASE
WHEN Column21 > ? THEN CAST((Column16 / Column21) AS decimal(15, 10))
ELSE ?
END as Column22
FROM Object5
LEFT OUTER JOIN
(SELECT
Column1,
Column11,
Column3,
Function4(Column14) as Column17
FROM Object5
GROUP BY
Column1,
Column11,
Column3
) as Object9
ON Object5.Column11 = Object9.Column11 AND Object5.Column3 = Object9.Column3 AND Object5.Column1 = Object9.Column1
LEFT OUTER JOIN
(SELECT
Column1,
Column11,
Column12,
Function4(Column15) as Column19
FROM Object5
GROUP BY
Column1,
Column11,
Column12
) as Object10
ON Object5.Column11 = Object10.Column11 AND Object5.Column12 = Object10.Column12 AND Object5.Column1 = Object10.Column1
LEFT OUTER JOIN
(SELECT
Column1,
Column11,
Column13,
Function4(Column16) as Column21
FROM Object5
GROUP BY
Column1,
Column11,
Column13
) as Object11
ON Object5.Column11 = Object11.Column11 AND Object5.Column13 = Object11.Column13 AND Object5.Column1 = Object11.Column1 |
Partager