sqlserver 如何把一列分为一行显示_SqlServer数据库如何快速修改表的一列值

工作中我们会遇到一个表的一列值需要进行整体更换为另一个表的某个字段的值,那么我们该如何处理呢?

797fc156ae16576e7c4dbb832c28c4d9.png

数据源

87c3184b596b665bcac01fe599a7e857.png

Room表

6ce61f4445f2bcb8497ebcd1bff5d64b.png

新的Room表

现将Room表的RoomTypeID列替换成Room_new表的RoomTypeID

  • 方法一:直接修改

update Room set RoomTypeID = (select RoomTypeID from [Room_NEW] where [Description] = room.[Description])

查询结果如下图所示

79c2283647c896599dec9ac1ee6b1415.png

更改后的信息

  • 方法二:

将需要的数据插入到一个新的表,然后DELETE之前的Room表,之后将数据重新插入

SELECT A.[RoomID],A.[BedNum],A.[GuestNum],A.[Description],A.[RoomStateID],B.[RoomTypeID]

INTO Room_Replace

FROM Room AS A

LEFT JOIN [Room_NEW] AS B ON A.Description=B.Description

之后DELTETE Room

INSERT INTO Room

SElECT * FROM Room_Replace

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值