我有一个出价表(不同的用户)。每个用户都可以随时出价(无限制)。
我需要应用两条取消出价的规则: 第一条规则 - 不超过4个连续出价,这意味着如果用户具有: 10.50 10.47 10.36 10.20 10.00 所以应该取消10.00。
第二条规则在前50个出价中不超过9个出价,同样,第10个应该被取消。
我做了很长的路,只是在出价表上运行并计算连续数。但我想知道是否有人有其他想法......(php + mysql)
由于
答案 0 :(得分:0)
对于第二个标准:
SELECT username, count(*) as bids
FROM
(SELECT username
FROM bids
ORDER BY bid_timestamp DESC
LIMIT 50)
WHERE username = :username
GROUP BY username
HAVING COUNT(*) > :bid_limit
如果此记录返回任何行,则禁止新的出价。可能是一个更好的方法来做到这一点,但它比将所有50行返回到php然后迭代并计数更好。