我有下表:
id - phone - value
1 - 1234 - null
2 - 4321 - null
3 - 1234 - null
我需要用 max(id) 的电话“1234”更新“值”列
id - phone - value
1 - 1234 - null
2 - 4321 - null
3 - 1234 - *updated
我尝试通过以下查询多次执行此操作:
cur.execute("UPDATE online_booking SET st1 = (%s) HAVING max(ID) and phone = (%s)", (st1, phone))
但它说“在“HAVING”处或附近出现语法错误”
最佳答案
您应该通过这样的子查询过滤 id
:
UPDATE online_booking
SET st1 = '*update'
WHERE id = (
SELECT max(id)
FROM online_booking
WHERE phone = '1234')
关于python - 如何在多个条件下更新值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48038472/