Frage : EINDEUTIGES Problem DES SQL-ZÄHLIMPULSES

Ich verwende den ZÄHLIMPULS, der in einem SQL „Gelenktabelle“ EINDEUTIG ist, aber die Zahlen herauskommen nicht nach rechts echts.  Ich erhalte keine Störungen, aber sie scheint, 1 Maßeinheit einigen der Berechnungen hinzuzufügen.  Es kann sein, dass ich nicht den ZÄHLIMPULS verwenden, der richtig EINDEUTIG ist oder, dass ich EINDEUTIGES.

Line 13 nicht überhaupt benutzen sollte, fein berechnet, aber 15, 17 und 19 correctly.

Can jedermann, nicht, innen zählend Anhaltspunkt ich?

Thanks - Hubbs
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:
DECLARE @strLASTEOM ALS VARCHAR (10)
@LASTEOM ALS DATUM/UHRZEIT ERKLÄREN
@strLASTEOM EINSTELLEN = „2/28/2010“
@LASTEOM EINSTELLEN = GEWORFEN (@STRLASTEOM ALS DATUM/UHRZEIT)

AS_OF_DT VORWÄHLEN
, SUMME (FALL-STATUS, WENN „STROM“ DANN UPB SONST 0 ENDE) WIE [STROM]
, SUMME (FALL-STATUS, WENN „30 DPD“ DANN UPB SONST 0 ENDE) WIE [30 DPD]
, SUMME (FALL-STATUS, WENN „60 DPD“ DANN UPB SONST 0 ENDE) WIE [60 DPD]
, SUMME (FALL-STATUS, WENN „90 DPD“ DANN UPB SONST 0 ENDE) WIE [90 DPD]
, SUMME (FALL-STATUS, WENN „FC“ DANN UPB SONST 0 ENDE) WIE [FC]
, (SUMME (UPB) - SUMME (FALL-STATUS, WENN „REO“ DANN UPB SONST 0 ENDE) - SUMME (FALL-STATUS, ALS DANN UPB SONST 0 ENDE) „SCHLOSS“)WIE [PORTFOLIO_UPB]
, ZÄHLIMPULS (EINDEUTIGES VCC_LnNum) WIE [Portfolio_Units]
, SUMME (FALL-STATUS, WENN „REO“ DANN UPB SONST 0 ENDE) WIE [REO_UPB]
, ZÄHLIMPULS (EINDEUTIGER FALL, WENN STATUS = „REO“ DANN UPB SONST 0 ENDE) WIE [REO_Units]
, SUMME (FALL-STATUS, WENN „REO-SOLD“ DANN UPB SONST 0 ENDE) WIE [REO-SOLD_UPB]
, ZÄHLIMPULS (EINDEUTIGER FALL-STATUS, WENN „REO-SOLD“ DANN AS_OF_DT SONST 0 ENDE) WIE [REO-SOLD_Units]
, SUMME (FALL BK_ACTIVE, WENN „ACTIVE“ DANN UPB SONST 0 ENDE) WIE [BK_UPB]
, ZÄHLIMPULS (EINDEUTIGER FALL BK_ACTIVE, WENN „ACTIVE“ DANN UPB SONST 0 ENDE) WIE [BK_Units]


VON EOM_VCCPORT3_wMOD
WO ((AS_OF_DT <= @LASTEOM UND AS_OF_DT >= DATEADD (d, - 1, DATEADD (Millimeter, DATEDIFF (m, 0, @LASTEOM) - 4.0))) ODER
	           (AS_OF_DT = DATEADD (d, - 1, DATEADD (Millimeter, DATEDIFF (m, 0, @LASTEOM) - 11.0))))
	 UND (STATUS <> „SCHLOSS ")
	 UND (FICO ZWISCHEN 0 UND 10000)
	 UND (Prop_Type mögen „%")
	 UND (Prop_St mögen „%")
	 UND (Occ_Status mögen „%")
	 UND ((MOD_NOW wie „%") oder (MOD_NOW IST) UNGÜLTIG)
	 UND (VCC_LTV_Orig ZWISCHEN 1 UND 100)   
	 
GRUPPE DURCH AS_OF_DT
AUFTRAG DURCH AS_OF_DT DESC

Antwort : EINDEUTIGES Problem DES SQL-ZÄHLIMPULSES

Das Problem ist das für SUMME, Sie kann SONST 0 verwenden, weil 0 nichts der SUMME hinzufügt.
Für ZÄHLIMPULS oder den EINDEUTIGEN ZÄHLIMPULS - SONST 0 nicht verwenden.  „0“ selbst gegolten als ein Einzelteil.

, ZÄHLIMPULS (EINDEUTIGER FALL, WENN STATUS = „REO“ DANN UPB ENDE) WIE [REO_Units]
, SUMME (FALL-STATUS, WENN „REO-SOLD“ DANN UPB ENDE) WIE [REO-SOLD_UPB]
, ZÄHLIMPULS (EINDEUTIGER FALL-STATUS, WENN „REO-SOLD“ DANN AS_OF_DT ENDE) WIE [REO-SOLD_Units]
, SUMME (FALL BK_ACTIVE, WENN ENDE „DES ACTIVE-“ DANN UPB) WIE [BK_UPB]
, ZÄHLIMPULS (EINDEUTIGER FALL BK_ACTIVE, WENN ENDE „des ACTIVE-“ DANN UPB) WIE [BK_Units]

Tatsächlich benötigen Sie nicht sogar 0 für SUMME.  Beide SUMMIEREN und ZÄHLEN überspringen über UNGÜLTIGEN Werten.
Weitere Lösungen  
 
programming4us programming4us