我有一个存储客户记录的数据库,我想设置一个cron作业来定期覆盖这些记录。我想说ORDERS中的Select *,其中ORDER_ID不在列表的前100位。每行都有自己的order_id,最新的order_id是最新的订单。如果出现一些问题,我需要保留最新的100个订单ID。感谢您的时间。
答案 0 :(得分:0)
select *
from Orders
where OrderID not in (
select OrderID
from Orders
order by OrderID desc
limit 100)
答案 1 :(得分:0)
你可以加入一个100最后order_id的行集 - 这将导致除了100之外的所有行在左连接集中都有NULL。
SELECT o.* from `order-table` o
LEFT JOIN
( SELECT order_id FROM `order-table` ORDER BY order_id DESC LIMIT 100 ) o100
ON o.order_id = o100.order_id
WHERE o100.order_id IS NULL