私は動的 SQL をいじってこれを達成しようとしましたが、それはちょっと可能ですが、最もスムーズな方法ではありません。
そこで、ランダムな名前の一時テーブル (##show101、##show24、##show576) を作成する方法があるかどうか疑問に思っていました。
私が達成しようとしているのは、さまざまなテーブルから特定のデータを含む一時テーブルが作成されることです。次に、一時テーブルのデータを操作して出力します。
SQL Server 2008 を使用しています。
私は動的 SQL をいじってこれを達成しようとしましたが、それはちょっと可能ですが、最もスムーズな方法ではありません。
そこで、ランダムな名前の一時テーブル (##show101、##show24、##show576) を作成する方法があるかどうか疑問に思っていました。
私が達成しようとしているのは、さまざまなテーブルから特定のデータを含む一時テーブルが作成されることです。次に、一時テーブルのデータを操作して出力します。
SQL Server 2008 を使用しています。
あなたの例は、グローバル一時テーブルを使用しています。これらは削除されるまでそのまま残り、異なる接続間で共有できます。それが彼らが「グローバル」である理由です。あなたの場合、それらは動的ステートメントの実行と外部ステートメントの間で共有することができます。
次のようなコードをお勧めします。
create table #MyTempTable . . . <as whatever>
declare @sql nvarchar(max) = '
select <whatver>
into #temp1
. . .
do some more work on #temp1 if you like
--Finally
select * from temp1
';
insert into #MyTempTable
exec(@sql);
これにより、データが動的スコープから外部スコープに「移動」され、他の目的に使用できるようになります。これで、#MyTempTableでアクセスできます。