将数据集 + 附加列插入 table

Inserting Dataset + additional columns into a table

这似乎是一个非常简单的问题,但对于我来说,我似乎无法弄清楚如何做到这一点。

我有一个数据集[一些 UNION 的组合] 需要插入 table。

数据集:

SELECT COL1 AS A, COL2 AS B, COL3 AS C
UNION ALL
SELECT COL1 AS A, COL2 AS B, COL3 AS C

Table结构:

CREATE TABLE TBL1
A varchar(50),
B varchar(50),
C varchar(50),
USERID varchar(50),
TIMESTAMP timestamp

我正在尝试:

    INSERT INTO TBL1
--syntax error here
    (SELECT COL1 AS A, COL2 AS B, COL3 AS C
        UNION ALL
        SELECT COL1 AS A, COL2 AS B, COL3 AS C)
--syntax error here
    ,'USER'
    ,GETDATE()

我在 select 开始和结束的行上遇到语法错误 [comments]

还有其他方法吗?

你会想让你的联合成为一个子查询。

INSERT INTO TBL1
SELECT A, B, C, 'USER', GETDATE()
FROM
(
    SELECT COL1 AS A, COL2 AS B, COL3 AS C
    UNION ALL
    SELECT COL1 AS A, COL2 AS B, COL3 AS C
) r