ゲーム用のデータベースを設計しようとしていますが、範囲に基づいてデータベース内のプレーヤーの経験値とレベルをリンクする方法に困惑しています。レベル 1 のようなものは 0 xp、レベル 2 は 200 の経験値、3 は 400 が必要、4 は 800 が必要です。変換が組み込まれています。
私がこれまでに見たすべての例 (同様の成績表の例) では、学生に A の成績が割り当てられ、学生が A として表すことができる 92 を取得したという事実を完全にスキップします。学生の成績のデータベースを使用している人々は、「彼の平均点は 73.9 点だった」から「彼は C を取得した」に変わるのでしょうか?
表の簡易版では
CREATE TABLE Hero
(
hero INT NOT NULL,
totalExpEarned INT NOT NULL,
...
PRIMARY KEY(hero)
);
CREATE TABLE Level
(
level INT NOT NULL,
...
PRIMARY KEY(level)
)
これを行う最も簡単な方法は、0 ~ 199 がレベル 1、200 ~ 399 がレベル 2 のようなルックアップ テーブルです。これは恐ろしい方法です。