私は確かにあなたのサブスクリプションをあなたのメンバー情報とは別に保存します。これにより、すべてのサブスクリプションの完全な記録が可能になるだけでなく、可変長のサブスクリプションが必要な場合にも役立ちます。テーブルの構造は次のようになります:
subscriptions
-------------
subscription_id integer
member_id integer
start_date date
end_date date
date_paid datetime
次に、SQLを直接使用して、期限切れが近づいているサブスクリプションなどを見つけることができます。したがって、今後7日以内に期限切れになるサブスクリプションを見つけるには、次のようなものがあります。
SELECT
member_id,
MAX(end_date) as expires_date
FROM
subscriptions
GROUP BY
member_id
HAVING
expires_date < DATE_ADD( CURDATE() INTERVAL 7 DAY )