如何在SQL中从一个表插入另一个具有额外值的表?

nat*_*ate 4 sql t-sql sql-server sql-insert

我有两张桌子.我想从Table1插入到Table2中,我想在表2中的列中插入额外的值.有没有办法在一个SQL语句中执行此操作?

Table 1

[Id]             UNIQUEIDENTIFIER NOT NULL,
[Description]    VARCHAR (140)    NULL,
[Cost]           MONEY            NULL,

Table 2

[Id]                  UNIQUEIDENTIFIER NOT NULL,
[Order Number]        NVARCHAR (10)    NULL,
[Order Date]          DATETIME         NULL,
[Item Number]         NVARCHAR (4)     NULL,
[Item Description]    VARCHAR (140)    NULL,
[Item Cost]           MONEY            NULL,
[Order Total Cost]    MONEY            NULL,
[Order Tax Cost]      MONEY            NULL, 
Run Code Online (Sandbox Code Playgroud)

这是我的SQL语句:

INSERT INTO Table2 ([Id], [Item Description], [Item Cost])
SELECT NEWID(), Description, Cost FROM  Table1
WHERE Id = '1'
Run Code Online (Sandbox Code Playgroud)

Gor*_*off 7

只需将值select与列列表中的列一起添加到行中:

INSERT INTO Table2 ([Id], [Item Description], [Item Cost], [Order Date])
    SELECT NEWID(), Description, Cost, '2014-12-13'
    FROM  Table1
    WHERE Id = '1';
Run Code Online (Sandbox Code Playgroud)