Pierwszy pomysł (wśród wielu innych, które miały dokładnie to samo):
DELETE FROM orders
WHERE order_id =
( SELECT MAX(order_id)
FROM orders
)
Niestety MySQL skarży się na:
> ERROR 1093 (HY000): You can't specify target table 'orders' for update in FROM
> clause
Dwa sposoby na ominięcie błędu:
DELETE FROM orders
WHERE order_id =
( SELECT maxo
FROM
( SELECT MAX(order_id) AS maxo
FROM orders
) AS tmp
)
lub:
DELETE FROM orders
ORDER BY order_id DESC
LIMIT 1