Keine SQL-Person überhaupt. Habe folgenden Code einen Berater geschrieben.SQL "IF", "BEGIN", "END", "END IF"?
Zuerst stellt es sicher, dass nur eine Grundschule gewählt wurde - dann, nach dem BEGIN, wenn die Variable @Term gleich 3 ist, wollen wir die Sachen unter dieser IF-Anweisung machen. Hier ist das Problem. Wenn @Term nicht = 3 ist, möchten wir immer noch den zweiten Teil in den @Classes-Teil einfügen. FYI - der Term ist = 3, wenn er ausgeführt wird, aber es werden nicht beide INSERTs ausgeführt - sollte es am Ende dieses "IF @Term = 3" -Bereichs eine END IF geben anstatt nur ein einfaches END?
IF @SchoolCategoryCode = 'Elem'
--- We now have determined we are processing an elementary school...
BEGIN
---- Only do the following if the variable @Term equals a 3 - if it does not, skip just this first part
IF @Term = 3
BEGIN
INSERT INTO @Classes
SELECT
XXXXXX
FROM XXXX blah blah blah
END <----(Should this be ENDIF?)
---- **always** "fall thru" to here, no matter what @Term is equal to - always do the following INSERT for all elementary schools
INSERT INTO @Classes
SELECT
XXXXXXXX
FROM XXXXXX (more code)
END
ich eingerückt den Code innerhalb des innersten Begin-End-Blockes, dachte es einige helfen könnte. – MrBoJangles