我通过选择表中已有的最高final_id并添加1来更新final_id时遇到问题 .
下面的查询输出错误:“你不能在FROM子句中为更新指定目标表'customer_orders'”,我遗憾地看不出为什么..
UPDATE customer_orders
SET final_id = (SELECT final_id FROM customer_orders ORDER BY final_id DESC)+1,
status = 2,
payment_id = '{$transaction_id}',
payment_type = '{$type}',
payment_reserved = '{$amount}',
payment_currency = '{$cur}',
payment_cardnopostfix = '{$postfix}',
payment_fraud_suspicious = '{$fraud}'
WHERE id = '{$order_id}'
我正在尝试为我的系统中的最终订单设置一个唯一的增加ID .
我希望有人能告诉我我做错了什么!
最好的祝福
3 回答
您可以重写查询并使用join
将内部查询更改为
SELECT max(final_id) FROM customer_orders
试试这个: