我想删除 order_id 最大的行,我尝试了以下方法:
DELETE FROM orders WHERE MAX(order_id)
但这是错误的!还有其他想法吗?
感谢您的时间。
第一个想法(以及许多其他完全相同的想法):
DELETE FROM orders
WHERE order_id =
( SELECT MAX(order_id)
FROM orders
)
不幸的是 MySQL 抱怨:
> ERROR 1093 (HY000): You can't specify target table 'orders' for update in FROM
> clause
绕过错误的两种方法:
DELETE FROM orders
WHERE order_id =
( SELECT maxo
FROM
( SELECT MAX(order_id) AS maxo
FROM orders
) AS tmp
)
or:
DELETE FROM orders
ORDER BY order_id DESC
LIMIT 1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)