0

内部結合を使用した選択が多数あるストアドプロシージャを作成しています。

テーブル名は「Product」で、名前を「P」に変更して、いつでも「P.Id」(またはその他のランダムな列)として連絡できるようにします。

欠点は、私が知っている唯一の方法は、どこでも「製品Pから選択」を使用する必要があることです。これをグローバル化する簡単な方法がないかどうかを知りたいです。

したがって、「From P」と入力すると、From Products Pがなくても、Pに製品を参照させたり、製品を参照させたりすることができる可能性があります。

4

1 に答える 1

0

使用しているRDBMSを指定していませんが、SQL Serverでこれを実行できると私が考える唯一の方法は、動的SQLを使用してクエリを実行することです。次に、実行するSQL文字列を作成します。動的SQLを使用すると、クエリ文字列に追加するパラメータにテーブル名を付けることができます。

コードは次のようになります。

declare @p varchar(50) = 'Products'
declare @query varchar(max)

set @query = 'select * from '+@p

execute(@query);

動的SQLを使用する場合は、次のことをお勧めします。

動的SQLの呪いと祝福

于 2013-01-15T15:32:22.403 に答える