会員ランクに関するテーブル設計で悩んでいます。
よくある「ブロンズ会員」「シルバー会員」「ゴールド会員」というのを実現したい場合、

会員   |ID、名前
会員ランク|ID、会員ID、ランクID、開始日時、終了日時
ランク   |ID、ランク名

というテーブル設計で実現できます。
ただ、
「ブロンズ会員なら購入金額から○%割引」
「シルバー会員になるには購入回数が○回以上」
「ゴールド会員の年会費は○円」

のような条件を入れたい場合、どのテーブルにカラムを用意するべきでしょうか?
ランクテーブルに入れるのか、ランク条件テーブルに入れるのか、
また、会員への付与と会員になる条件を同じテーブルにしても良いのか?
など、悩む部分が多いです。

最終的な要件によると思いますが、
会員ランクを設計したことがある人がいれば、考え方を教えてください。