4

我有一个表,其中包含location id and the item number combination form the primary key. 在成本等方面,两个位置的许多项目都是相同的。我需要修复一个位置信息,该位置信息以某种方式被用户更改。我正在寻找有关如何将值设置为location 1 for item 1location 2 item 1. 如果值在不同的表中,我知道如何执行此操作,但是当值在同一个表中时,我不确定如何完成此操作。任何建议将不胜感激

4

4 回答 4

9

我想你正在寻找这个:

UPDATE table SET col1 = col2

在表“table”的所有行中将“col1”设置为“col2”的值

于 2012-11-02T16:15:43.653 回答
4

我认为你需要这个:

UPDATE l1
SET COST = l2.COST
FROM TableA l1
INNER JOIN TableA l2 ON l2.Location = 2 AND l1.item = l2.item
WHERE l1.location = 1 and l1.item = 1
于 2012-11-02T16:28:52.377 回答
3

如果你想在同一个表中设置一个列值,另一个列值然后使用这个查询

UPDATE table_name SET column_1 = column_2

column_1 假设这在所有记录中都是空白的,而 column_2 这个列你想在 column_1 中放置相同的值,然后使用下面的示例:

UPDATE customer SET `blank_column` = `student_name`

运行查询,blank_column 可以填充与 student_name 值相同的值

于 2017-07-29T11:24:26.970 回答
1

这是你想要的吗?

UPDATE table t1 JOIN table t2
SET t1.col1 = t2.col1, t1.col2 = t2.col2, ...
WHERE t1.item_number = 1 and t1.location_id = 1
AND t2.item_number = 1 and t2.location_id = 2
于 2012-11-02T16:17:24.007 回答