3

一時テーブルでいくつかの操作を実行できるように、Excel ファイルを一時テーブルにロードしようとしています。

次のステートメントを使用して、Excel ファイルを開きます。しかし今、それを一時テーブルにロードする必要があります。

SELECT A.*
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
                'Excel 12.0;Database=D:\b1.xlsx; hdr=yes',
                'SELECT * FROM [Co Contact$]') AS A;

私がしようとしているのは、このようなものです

select top 0 *
into #mytemptable
from A

Excelファイルで列の名前を指定せずに一時テーブルを宣言せずにそれを行う必要があります。(Excel ファイルには 100 列近くの列が含まれている可能性があるため)

出来ますか ?

4

1 に答える 1

2

最初のステートメントが機能すると仮定して、それを一時テーブルに入れるには、次のようにする必要があります。

SELECT A.*
INTO #MyTempTable
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
                'Excel 12.0;Database=D:\b1.xlsx; hdr=yes',
                'SELECT * FROM [Co Contact$]') AS A;

次に、#mytemptableで遊ぶことができます

Select * From #mytemptable;
于 2013-01-02T15:07:55.737 に答える