Wenn ich dieses Skript auf Sybase IQ:SQL Anywhere Fehler -824: Unzulässige Bezugnahme auf Korrelationsnamen Tabellenname
declare @YEAR int=2017
declare @MON int=6
declare @DAY int=7
update MainTable
set MainTable.Amount=(X.Number+Y.Number),
MainTable.Total=(X.Total+Y.Total)
from (select 'Number'= count(*), 'Total'=case when SUM(T1_Total) is null then 0 else SUM(T1_Total) end
from Table1
where T1_Account_NO=MainTable.Account_NO
and [email protected] and [email protected] and [email protected]) X,
(select 'Number'= count(*), 'Total'=case when SUM(T2_TOTAL) is null then 0 else SUM(T2_TOTAL) end
from Table2 where T2_Account_NO = MainTable.Account_NO
and [email protected] and [email protected] and [email protected])Y
where [email protected]
and MainTable.MON = @MON
and [email protected]
Ich habe einen Fehler wie folgt aus: "SQL Anywhere Fehler -824: Unzulässige Bezugnahme auf Korrelationsnamen MainTable "
Wie kann ich dieses Problem übertreffen?
Ja ich habe es versucht, der gleiche Fehler hat geworfen. –
Hmmm, ich frage mich, ob SQLAnywhere wie ASE ist, da es keine korrelierten Namen unterstützt, die an abgeleitete Tabellen weitergegeben werden, dh die abgeleitete Tabelle darf keine externen Tabellen-/Ansichts-/Korrelationsnamen referenzieren. Wenn das der Fall ist, lass mich meine Antwort mit einer anderen Idee aktualisieren ... gib mir ein paar Minuten ... – markp
danke für dich nützlichen Rat. –