0

同じレイアウトのテーブルを返す 10 個のテーブル値関数があります。SQL Server 2005 のビューに 10 個の関数すべての出力を表示したいと考えています。

ビューのデザインでこのようにしようとすると...

select col1, col2... coln from dbo.tableFunc1
Union
select col1, col2... coln from dbo.tableFunc2

メッセージが表示されます:

ユニオンを含むビューは、グリッド ペインとダイアグラム ペインでグラフィカルに表示できません。

これらのすべての関数をビューで集計する方法はありますか、それとも関数を集計して集計関数の出力を表示する追加の関数を作成する必要がありますか?

4

2 に答える 2

1

ビューを複数の機能に使用する理由は何ですか? 関数のロジックを実行するテーブルからビューを作成しないのはなぜですか? EG: 代わりに

select col1, col2
from dbo.tablefunc1
union
select col1, col2
from dbo.tablefunc2

行う

Select col1, col2
from tableforfunc1 1
   join tableforfunc2 2 on 1.id = 2.id
union
Select col1, col2
from tablefunc2

テーブル関数の作成のロジックが原因でそれが難しすぎる場合は、すべてのオブジェクトの組み合わせを使用して、より大きなテーブル関数またはプロシージャを再作成してみませんか?

いくつかの基本的なテストテーブル関数を使用して SQL Server 2012 でこれを試してみたところ、機能したので、これが 2005 の制限であるかどうか疑問に思います。

于 2013-03-18T22:59:28.610 に答える