適格なキーを見つけるためのクエリを作成しようとしています。キーが適格であるための基準は、24時間以内に10回使用されてはならないということです。
キーが使用されるたびに、レコードがテーブルapi_historyに保存されます。
誰かがそれを正しく行う方法を教えてもらえますか?現在、api_historyにレコードが存在しないため、空のキーが返されます。(その後、最初のギブキーを返す必要があります)。
前もって感謝します!
クエリ:
SELECT ak.key
FROM api_history ah
INNER JOIN api_keys ak ON ah.key_id = ah.id
WHERE ah.used_at > DATE_SUB(now(), INTERVAL 1 DAY)
HAVING COUNT(ah.id) < 10 LIMIT 0,1
テーブル:
api_keys
- id(int)
- キー(文字列)
api_history
- id(int)
- key_id(int)
- used_at(日時)