への不正な参照、私はSybase IQの上でこのスクリプトを実行します。「SQL Anywhereのエラー-824:相関名への不正な参照SQL Anywhereのエラー-824:相関名tableNameの
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]
私はこのようなエラーが発生しましたMainTable」
は、どのように私はこの問題を上回ることができますか?
update Maintable
set ...
from MainTable,
(select ...)X,
(select ...)Y
where ...
注:
はい私はそれを試みました、同じエラーがスローされました。 –
Hmmm、SQLAnywhereがASEのようなもので、相関名が '派生テーブルに渡されました'、つまり派生テーブルが外部テーブル/ビュー/相関名を参照することを許可されていないかどうか疑問に思っていますか?それが事実なら、別のアイデアで私の答えを更新させてください...私に数分を与えてください... – markp
あなたに有用なアドバイスをお願いします。 –