在做交易項目的時候需要一個定時補償來把交易異常失敗但是能繼續跑的交易繼續跑下去,要求是5分鍾跑一次程序,邏輯比較簡單,就貼一個查詢語句吧
SELECT * FROM 表名 t WHERE 條件一 AND 條件二 AND t.時間 <= CONCAT(date_format(DATE_SUB(NOW(), INTERVAL 5 MINUTE),'%Y%m%d%H%i%S'),'000') LIMIT 0, 1000 ORDER BY t.時間 DESC
這里我們的時間是yyyyMMddHHmmssSSS的字符串格式
如果是日期格式就可以把轉字符串的去掉
如下:
SELECT * FROM 表名 t WHERE 條件一 AND 條件二 AND t.時間 <= DATE_SUB(NOW(), INTERVAL 5 MINUTE) LIMIT 0, 1000 ORDER BY t.時間 DESC