什么是在SQL中为一个实体存储不同价格的最佳方法?

时间:2017-06-26 16:02:54

标签: html sql sql-server

因此,我正在构建一个网页,其中显示了一组位于SQL数据库中的视频游戏,我提出的一个建议就是根据下拉列表显示每个区域的不同价格。我的问题是试图弄清楚什么是在数据库中存储int的最佳方法。它会是这样的:

  • GAME
    • CountryID
    • 价格1
    • CountryID
    • price2
    • CountryID
    • price3 ...

或者有更好的方法吗?

只是提醒我一年只开发Web应用程序一年左右,而且我还不熟悉SQL。

感谢您的投入!

1 个答案:

答案 0 :(得分:3)

我会使用多个表,一个用于游戏,一个用于区域定价。

游戏

+--------+----------+
| GameID | GameName |
+--------+----------+
|      1 | Game1    |
|      2 | Game2    |
|      3 | Game3    |
|      4 | Game4    |
+--------+----------+

RegionPricing

+----------+--------+-------+
| RegionID | GameID | Price |
+----------+--------+-------+
|        1 |      1 |    60 |
|        1 |      2 |    55 |
|        1 |      3 |    45 |
|        1 |      4 |    80 |
|        2 |      1 |    50 |
|        3 |      2 |    30 |
|        3 |      3 |    25 |
|        3 |      4 |    45 |
|        4 |      1 |    60 |
|        4 |      2 |    55 |
|        4 |      3 |    45 |
|        4 |      4 |    80 |
+----------+--------+-------+

通过使用单独的表,您可以最大限度地减少重复数据并允许轻松进行细化更您还可以考虑为RegionPricing添加一列货币。这还需要一个Region表,RegionID和RegionName。