被一个问题困扰了很久,我想更新数据库中名为“到期”这一列,一开始用“UPDATE 库存记录 SET 到期='30/20'WHERE 编号='KAMK002' ”这个命令,利用循环,每次循环不断的修改列的数值,结果由于数据库行数太多,导致客户端工作过多的错误,不知道如果一定要用这个办法,有什么解决方案吗?
后来我又想,先一次性把“到期”这一列全部计算出来,然后一次性在写入这一列,后来发现没有合适的命令,查了很多资料都没找到,有没有哪位大神能够解答一下啊。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
table1
ID f1 f2
table2
ID f1 f2
先要将table2中的f1 f2 更新到table1(相同的ID)
update table1,table2 set table1.f1=table2.f1,table1.f2=table2.f2 where table1.ID=table2.ID
2.将同一个表中的一些记录更新到另外一些记录中
表:a
ID month E_ID Price
1 1 1 2
2 1 2 4
3 2 1 5
4 2 2 5
先要将表中2月份的产品price更新到1月份中
显然,要找到2月份中和1月份中ID相同的E_ID并更新price到1月份中
这个完全可以和上面的方法来处理,不过由于同一表,为了区分两个月份的,应该将表重命名一下
update a,a as b set a.price=b.price where a.E_ID=b.E_ID and a.month=1 and b.month=2
当然,这里也可以先将2月份的查询出来,在用1.的方法去更新
update a,(select * from a where month=2)as b set a.price=b.price where a.E_ID=b.E_ID and a.month=1
table1
ID f1 f2
table2
ID f1 f2
先要将table2中的f1 f2 更新到table1(相同的ID)
update table1,table2 set table1.f1=table2.f1,table1.f2=table2.f2 where table1.ID=table2.ID
2.将同一个表中的一些记录更新到另外一些记录中
表:a
ID month E_ID Price
1 1 1 2
2 1 2 4
3 2 1 5
4 2 2 5
先要将表中2月份的产品price更新到1月份中
显然,要找到2月份中和1月份中ID相同的E_ID并更新price到1月份中
这个完全可以和上面的方法来处理,不过由于同一表,为了区分两个月份的,应该将表重命名一下
update a,a as b set a.price=b.price where a.E_ID=b.E_ID and a.month=1 and b.month=2
当然,这里也可以先将2月份的查询出来,在用1.的方法去更新
update a,(select * from a where month=2)as b set a.price=b.price where a.E_ID=b.E_ID and a.month=1
一周热门 更多>