那一定很容易,但对我来说只是迟到了,我有一个三列的桌子。
举个例子:
产品价格评估周
水稻专卖商品
花生.‘>.
/T1356-1996面包专卖商品0,5,B和36
37 /T1397-1997水稻专卖商品
花生. Peanuts =‘Peanuts 6’>
/T1587-1997面包专卖商品0、8、C/ 37
我怎样才能更新表格,把一个产品的价格从一个星期复制到另一个星期。假设我想复制37周到38周的价格,因为价格保持不变。
发布于 2013-11-11 19:07:41
您只需获取要复制的一周的结果,并将其插入表中,如下所示:
INSERT INTO table (product, price, week)
SELECT product, price, '[NEW WEEK VALUE]'
FROM table WHERE week = '[OLD WEEK VALUE]'是否在周前后使用引号将取决于列是整型还是文本类型的列。
若要使用其他值更新现有行,可以使用以下替换语法:
REPLACE INTO table (product, price, week)
SELECT product, price, '[NEW WEEK VALUE]'
FROM table WHERE week = '[OLD WEEK VALUE]'但是请注意,对于product列组合,您没有主键或唯一索引,这将简单地添加另一行。如果您想每周强制执行一个产品条目,您应该希望在这些列上有一个唯一的索引或主键。还请注意,如果现有的产品/周组合还不存在,这将充当插入,因此这是一种更新/添加此数据的通用方法--它不知道该产品/周组合是否存在。
https://stackoverflow.com/questions/19913866
复制相似问题