根据另一个表的唯一值插入值(标准化)

时间:2017-12-18 04:40:49

标签: sql sql-server database tsql

我的Table1有A,B和B列; C。 我想创建表2并为ColumnA,Table1(唯一)中的值创建主键,然后相应地填充Table1中的值B和C(基于列A的唯一值)。

任何帮助将不胜感激。 编辑:我正在使用SQL服务器并尝试使用INSERT INTO ... SELECT DISTINCT。

1 个答案:

答案 0 :(得分:0)

If you are using MS SQL Server, Try this

WITH CTE
AS
(
    SELECT
        RN = ROW_NUMBER() OVER(PARTITION BY ColumnA ORDER BY ColumnA),
        ColumnA,
        ColumnB,
        ColumnC
        FROM YourTable
)
INSERT INTO Table2
(
    ColumnA,
    ColumnB,
    ColumnC
)
SELECT
    ColumnA,
    ColumnB,
    ColumnC
    FROM CTE
        WHERE RN = 1