1

次の構造のテーブルがあります。

TableNo1

フィールド1

行1

行2

行3

行4

行5

..。

..。

..。

行n

次に、次のスキーマを使用して新しいテーブルを作成する必要があります。

TableNo2

Field1(Table1の行1)Field2(Table1の行2)Field3(テーブル1の行3)Fieldn(テーブル1の行n)

私はこれについて読みましたが、私が見つけたのは、機能しないinto句だけです。

誰か助けてもらえますか?

4

1 に答える 1

3

動的 SQL を使用できます

DECLARE @TableNo1 TABLE(Field varchar(128),DataType varchar(128))
DECLARE @s nvarchar(max)='CREATE TABLE dbo.TableNo2('
INSERT INTO @TableNo1
VALUES
('Field1','nvarchar(max)'),
('Field2','int')

SELECT  @s+=T.Field+' '+T.DataType+',' FROM   @TableNo1 T
SET @s=LEFT(@s,LEN(@s)-1)+')'
EXECUTE(@s)
于 2011-08-26T11:56:53.607 に答える