我想将一些数据复制到SQL Server 2008数据库的单个表中,然后将其复制到同一表中,然后将复制数据的一列中的值更改为一个指定的数字。这是一个示例,在下表中称为Metric的表中,数据为:

Key  Name    MetricValue
112    Joe      34
112    Fred     38
112    Frank    12
112    John     56
112    David    87
112    Sue      43
234    Alli     34
234    Susan    38
234    Anne     12
234    Franki   56

我想将所有键为112的条目复制到Metric,并将所有复制的行的Key为387,这给表Metric中的值提供了:
Key  Name    MetricValue
112    Joe      34
112    Fred     38
112    Frank    12
112    John     56
112    David    87
112    Sue      43
234    Alli     34
234    Susan    38
234    Anne     12
234    Franki   56
387    Joe      34
387    Fred     38
387    Frank    12
387    John     56
387    David    87
387    Sue      43

注意,该表还有一个主键,上面没有显示。

如何在与SQL Server 2008兼容的SQL中执行此操作。

谢谢您的帮助,

托尼

最佳答案

在这里尝试

INSERT INTO Metric(Key,Name,MetricValue)
SELECT 387,Name,MetricValue
FROM Metric
WHERE Key = 112

关于sql - 在同一表之间来回复制数据,并将一列中复制的数据的值更改为指定值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9225038/

10-10 10:44