異なるサーバーにあるいくつかのテーブルのデータを結合する必要があります。私はサーバーの管理者権限を持っていないので、誰かがこれについて尋ねるたびに即座に応答するリンクサーバーを作成できません。いくつかの一時テーブルを作成してからそれらを結合しようと思ったのですが、#tempテーブルを正常に作成し、いくつかのWHERE句を使用してテーブル内のデータ量を減らすことができましたが、これはボーナスです。 2つを結合する方法を理解します。SQL Server Management Studioを使用していますが、特定のSQLクエリで両方の一時テーブルを一度に「表示」できないようです。一時テーブルは、データの収集元のサーバーにまだ保存されていますか?それらはすべて、一度にアクセスできる一時データベースにすべて保存されているという印象を受けました。
最初にやった
SELECT ID
,A
,B
,C
INTO ##Temp1
FROM [DB1].[dbo].[Table1]
WHERE ID IS NOT NULL
それから別のウィンドウで私はしました
SELECT A_ID
,Q
,R
INTO ##Temp2
FROM [DB2].[dbo].[Table2]
しかし、2つに参加しようとすると
SELECT A_ID
,Q
,R
,A
,B
,C
FROM ##Temp2 AS TableA
LEFT JOIN ##Temp1 as TableB
ON TableA.A_ID = TableB.ID
エラーが発生しました
Invalid object name '##Temp1'.
このようなことを試みるのはこれが初めてであり、ここでは非常に単純なものが欠けているように感じますが、すべての検索で何も見つかりませんでした。:/
ここには少なくとも5つのオプションがあり、それらすべてを「通常の」ユーザーが使用できるわけではありません。
または
または
または
または
..。
2つのサーバーで2つの同一のテーブルを作成できる場合は、CMS(中央管理サーバー)を使用して、2つのサーバーで同時にクエリを実行できます。マージされた結果は、いくつかのテーブルに挿入されてから処理される場合があります。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加