エラーメッセージを見たことがありますか?
-- SQL Server 2000
ビューまたは関数の解決のために補助テーブルを割り当てることができませんでした。
クエリ内のテーブルの最大数 (256) を超えました。-- SQL Server 2005
クエリ内のテーブル名が多すぎます。許容される最大値は 256 です。
はいの場合、何をしましたか?
あきらめた?顧客の要求を簡素化するよう説得しましたか? データベースを非正規化しましたか?
@(クエリの投稿を希望するすべての人):
- 回答編集ウィンドウに 70 キロバイトのコードを貼り付けられるかどうかわかりません。
- これができたとしても、この 70 キロバイトのコードは 20 または 30 のビューを参照するため、これは役に立ちません。
ここで自慢しているように聞こえたくありませんが、問題はクエリにありません。クエリは最適 (または少なくともほぼ最適) です。削除できるすべての列とすべてのテーブルを探して、それらを最適化するのに数え切れないほどの時間を費やしました。1 つの SELECT ステートメントで入力する必要がある 200 列または 300 列のレポートを想像してみてください (数年前、まだ小さなレポートであったときに、そのように設計されたためです)。