根据另一个表的唯一值插入值(规范化)

问题描述 投票:1回答:1

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

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

sql sql-server database tsql
1个回答
0
投票

如果您使用的是MS SQL Server,请尝试此操作

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
© www.soinside.com 2019 - 2024. All rights reserved.