我有拍卖地的桌子:
mysql> desc lots;
+------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+----------------+
| id | int(10) | NO | PRI | NULL | auto_increment |
| account_id | int(10) | YES | | NULL | |
| item_id | int(10) | YES | | NULL | |
| bid | int(10) | YES | | NULL | |
| buyout | int(10) | YES | | NULL | |
| leader | int(13) | YES | | NULL | |
| left | int(10) | YES | | NULL | |
+------------+--------------+------+-----+---------+----------------+
left - 字段采用unix时间戳格式,如'1391143424'。这显示了批次应该过期的时间戳。
我需要开发有效的算法:
- 当客户点击SEARCH按钮时,结果将仅显示未过期的批次
-once lot过期后应自动放入completed_lots
表
我有一些想法,但想验证是否有更好的方法:
1:添加其他搜索条件,例如:
WHERE '$currtime' <= left;
2:使用crontab设置一些异步任务,每隔5分钟将lots
表检查过期批次并将其移至completed_lots
表。
有没有更好的方法?也许使用另一个mysql字段类型的unix时间,或创建一些自动完成该工作的mysql函数?