如何通过保留其他值来复制旧数据并将新重命名的数据插回到同一个表中

时间:2011-12-16 18:50:42

标签: sql database oracle cursor

我有item_Details表,其中3列名为itemID,itemName,itemValue。我想复制所有itemID的itemName(即book)和相应的itemValue,并将book重命名为textBook,用于少数选定的itemID,并通过保留旧itemValue为所有相应的itemID插回表。

附图解释了我要找的内容,enter image description here

3 个答案:

答案 0 :(得分:1)

如上所述,这样做:

UPDATE myTable SET itemName='textBook' 
WHERE itemName='book' 
AND itemID NOT IN (%itemsToKeepTheSame%);

基本上,没有重新插入,你只是在改变数据。正确?

答案 1 :(得分:1)

试试这个SQL查询

update item_Details set itemName = "textBook" where itemName=="book"

答案 2 :(得分:0)

那怎么样呢?

UPDATE item_Details 
SET itemName = "textBook"
WHERE itemName == "book" 
AND NOT itemId IN (108, 109);