WITH scope AS(SELECTidFROM
access_log
ORDER BYidLIMIT ?
),
scoperange AS(SELECTmin(id) minid,max(id) maxid
FROMscope)DELETE FROM access_log USING scoperange
WHERE request_time <CURRENT_DATE- ?::intervalAND access_log.id BETWEEN scoperange.minid AND scoperange.maxid