SQL将值从一个表列更新到另一个[重复]
Posted
技术标签:
【中文标题】SQL将值从一个表列更新到另一个[重复]【英文标题】:SQL Update values from one table column to another [duplicate] 【发布时间】:2017-06-01 19:31:35 【问题描述】:我有一个简单的选择语句来标识我要更新的行。基本上我想将 vad_description 复制到 vb_description 并且不能完全弄清楚这一点。任何帮助将不胜感激。
SELECT
variant_bom.vb_id
,variant_bom.vb_description
,variant_detail.vad_description
FROM dbo.variant_bom
INNER JOIN dbo.variant_detail
ON variant_bom.vb_vad_id = variant_detail.vad_id
INNER JOIN dbo.variant_setting
ON variant_setting.vas_vad_id = variant_detail.vad_id
WHERE variant_setting.vas_manufactured_variant = 1
AND variant_setting.vas_discontinued_product = 0
【问题讨论】:
【参考方案1】:试试这样的
UPDATE vb
SET vb.vb_description = vd.vad_description
FROM dbo.variant_bom vb
INNER JOIN dbo.variant_detail vd
ON vb.vb_vad_id = vd.vad_id
INNER JOIN dbo.variant_setting vs
ON vs.vas_vad_id = vd.vad_id
WHERE vs.vas_manufactured_variant = 1
AND vs.vas_discontinued_product = 0
为表命名 Alias
将使您的查询更具可读性
【讨论】:
哇。那很快。 +1 那很快。我得到以下回复|错误 (1,1):字符串或二进制数据将被截断。声明已终止。 @TowelsRusvariant_bom.vb_description
& variant_detail.vad_description
列的长度是多少?
啊,我可以在那里看到问题,100 个字符与 250 个字符
@TowelsRus 所以您需要将长度更改为 250,这应该可以解决您的问题以上是关于SQL将值从一个表列更新到另一个[重复]的主要内容,如果未能解决你的问题,请参考以下文章