使用SQLite3并在特定条件下使用另一个表中的值更新列

w46czmvw  于 2022-12-27  发布在  SQLite
关注(0)|答案(1)|浏览(149)

用依赖于Table2的值更新Table1中的记录,但要在一定条件下。换句话说,下面的指令显示了如何在Python中实现它,但我只想使用SQLite了解更多。
'

import sqlite3
num=1
connect = sqlite3.connect("db/db.db")
t=connect.execute ("SELECT snf, qty FROM invdetail WHERE num=?",(num,))
result=t.fetchall()
for y in (result):
    doo = connect.cursor()
    doo.execute ("""UPDATE quantity SET 
    qty = qty + ? WHERE snf = ?""",(y[1], y[0],))
connect.commit()
connect.close()

'
我尝试了很多方法,但在SQLite中不起作用,但在Python中却起作用了。创建此帖子就是为了利用它。谢谢

rsl1atfo

rsl1atfo1#

这应该对你有用:

update quantity
   set qty = quantity.qty + i.qty
  from (select snf, qty from invdetail where num = <param_num>) as i
 where quantity.snf = i.snf;

相关问题