これは以前に尋ねられたかもしれませんが、関連する答えがどこにも見つからないようです。
数週間前に Access (2003) で長いクエリをいくつか書きました。今日それらのクエリを使用したかったのですが、それらが切り詰められていることがわかりました。クエリは本来どおりに開始され、途中のどこかAS [%$##@_Alias]
で、残りが欠落しています。
両方のクエリの長さはわずか 100 文字で、Access で許可されている制限をはるかに下回っています。
両方のクエリの構造は次のようになります
SELECT Some calculated fields with a few IIF statements
FROM
(
SELECT Some fields calculated with lots of IIF statement
FROM joined table
WHERE some condition
)
ORDER BY Some fields
私がしていないことは、Access に特に厳しい要求をするものではありません。では、なぜこれが起こるのですか?
今日本語のテキストを入れたことを非難しないでください。次の部分は純粋に参照用です。私の実際の(切り捨てられた)クエリの1つは次のようになります。
SELECT
管理番号,
種別,
IIF(種別TYPE='', OTHER種別TYPE, IIF(種別TYPE='その他','その他' & OTHER種別TYPE,種別TYPE)) AS TYPE
FROM [
SELECT
管理番号,
IIF(建物か設備_建物,'建物',IIF(建物か設備_設備, '設備', '種別なし')) AS 種別,
IIF(建物か設備_建物,IIF(建物用途_戸建住宅,'戸建住宅',IIF(建物用途_共同住宅,'共同住宅',IIF(建物用途_教育施設,'教育施設',IIF(建物用途_庁舎,'庁舎',IIF(建物用途_事務所,'事務所',IIF(建物用途_工場,'工場',IIF(建物用途_倉庫,'倉庫',IIF(建物用途_店舗,'店舗',IIF(建物用途_物置小屋,'物置小屋',IIF(建物用途_車庫,'車庫',IIF(建物用途_農作小屋,'農作小屋',IIF(建物用途_その他,'その他')))))))))))),
IIF(建物か設備_設備,IIF(設備種別_物置,'物置',IIF(設備種別_駐車場,'駐車場',IIF([設備種別_運動場/庭等],'運動場/庭等',IIF(設備種別_電気設備等,'電気設備等',IIF(設備種別_畜舎など,'畜舎など',IIF(設備種別_ビニールハウス等,'ビニールハウス等',IIF(設備種別_その他,'その他'))))))),'')) AS 種別TYPE,
'(' & REPLACE(REPLACE(TRIM(建物用途_その他記載欄),'(',''),')','') & ')' AS OTHER種別TYPE
FROM
T_メイン INNER JOIN T対象 ON T_メイン.管理番号=T対象.調査番号]. AS [%$##@_Alias];
編集
私は両方のクエリを再確認しましたが、私が言ったのとは異なり、そのうちの 1 つだけが切り捨てられました。もう1つは無傷です。非常に奇妙...