首页 > 解决方案 > 如何将数据从一列行复制到同一列但不同的行

问题描述

我在 sql 中有一个数据库,我想将列的值复制到同一列但不同的行。我已经搜索了互联网并尝试了很多东西,但我无法让它工作......

我添加了要复制的绿色数据图片,并以紫色显示下面的 4 行一起定义产品或库存项目 ID。

https://snipboard.io/B4lEGx.jpg

标签: mysqlsqlsql-updatesql-insert

解决方案


仅当 stock_id 与 wi_id 完全匹配时,以下查询才有效

SELECT * FROM TABLE1 
INNER JOIN TABLE2 ON stock_id = wi_id
WHERE wi_id IN (14356, 527399, 56873, 581818);

下面查询更新记录

UPDATE TABLE1
INNER JOIN TABLE2 ON stock_id = wi_id
SET 
TABLE1.ColumnName1 = TABLE2.wi_warning_stock_level,
TABLE1.ColumnName2 = TABLE2.wi_ideal_stock_level
WHERE wi_id IN (14356, 527399, 56873, 581818);

推荐阅读