在SQL Server中,如何将行的数据复制到一行并更改为一列?

时间:2018-01-08 21:28:25

标签: sql sql-server

我发现有人已经以某种形式或其他形式提出过这个问题但是我猜不到。

简单地说,我有一个单行表:

MyModelSerializer(serializers.ModelSerializer):
     class Meta:
         model = MyModel
         fields = ('myfield')

我想复制该行并更改所有者的名称,使其如下所示:

ID    PET_NAME    PET_DESC            OWNER
1     Kibbles     Rat-faced possum    Bixby

我如何做到这一点? 谢谢!

2 个答案:

答案 0 :(得分:7)

我假设IDidentity

insert into T (PET_NAME, PET_DESC, OWNER)
select PET_NAME, PET_DESC, 'Dweezle'
from T
where ID = 1;

答案 1 :(得分:0)

您也可以使用system_user替换硬编码的所有者名称。它将是执行查询的用户名

插入TNAME(ID,PET_NAME,PET_DESC,OWNER) SELECT ID,PET_NAME,PET_DESC,SYSTEM_USER 来自TNAME 所有者('Bixby')

- 提及要添加为新

的所有者名称