これには簡単な回避策があります。ユニオンクエリ(またはそれに関する派生テーブル)を別のselectでラップする必要があります。これを実行してから、通常どおり構文を続行します。
select * from
(
SELECT 1 as I
UNION ALL
SELECT 2 as J
) as K
このようなものがあなたが探しているものです:
SELECT STUFF((
select * from(
SELECT * from dbo.Table1 as I
UNION ALL
SELECT * from dbo.Table2 as j
) as k
FOR XML PATH('')
),1,0,'')
確認したところ、問題なく動作しています