如果 Table2 尚未创建,您可以使用此查询:
SELECT
NEWID() AS [ID]
,Description AS [Item Description]
,Cost AS [Item Cost]
INTO Table2
FROM Table1
WHERE Id = '1'
但是,如果表 2 的架构已经创建,并且它有一个标识符列,那么您可以使用:
INSERT INTO Table2 ([ID], [Item Description], [Item Cost])
SELECT
NEWID()
, Description
, Cost
FROM Table1
WHERE Id = '1'
但是,如果您还没有为 Table2 创建架构,那么我建议您使用以下代码为表创建架构并填充其中的数据,使用来自 Table1 的数据。
CREATE TABLE Table2 (
[ID] INT Identity
,[Item Description] AS NVARCHAR(MAX)
,[Item Cost] AS NUMERIC(18, 2))
INSERT INTO Table2([Item Description] , [Item Cost])
SELECT
Description
, Cost
FROM Table1
WHERE Id = '1'
将 ID 列设置为 Identity 将为您不必担心填充的每一行自动生成唯一的标识符编号。该数字是递增的,默认情况下每行递增 1,从 1 开始。
您还可以通过将 [ID] 列定义为 [ID] INTEGER IDENTITY(1000, 2) 来定义起始编号和增量值,这将使起始值 1000 并且增量将为 2(但这只是仅供参考)。