【问题标题】:MySQL database organization for stocks股票的 MySQL 数据库组织
【发布时间】:2014-04-05 09:29:19
【问题描述】:

所以我正在创建一个网络服务来根据每只股票的历史数据预测未来的股票价格,并且需要将以下信息存储在数据库中:

  • 股票信息:公司名称、股票代码、预测价格
  • 对于每只被跟踪的股票:历史数据,包括可追溯到 1-5 年的每一天的每日最高价、每日最低价、收盘价等。
  • 用户信息:用户名、密码、电子邮件、电话号码、(通常)
  • 用户跟踪的股票:用户可以挑选股票,以便日后通过电子邮件或电话提醒预测。

将进行预测的股票集不会被预定义,因此应该有一种快速的方法可以添加和删除股票,从而添加/删除与其相关的所有数据(如上所述)。我的设计方法如下:

表格:股票

+-----+-----------+----------+------------+----------+-------------+
| ID  |  Company  |  ticker  |  industry  |  Sector  |  Prediction |
+-----+-----------+----------+------------+----------+-------------+

表格:历史价格

+-------------------------------------+--------+--------+-------+----------+
| StockID(using stock ID from above)  |  Date  |  High  |  Low  |  Closing |
+-------------------------------------+--------+--------+-------+----------+

表:用户

+-----+------------+------------+---------------+
| ID  |  Username  |  Password  |  PhoneNumber  |
+-----+------------+------------+---------------+

表格:TrackedStock

+---------+----------+
| UserID  |  StockID |
+---------+----------+

有没有更好的方法来优化这个组织?就查询而言,大部分将根据历史数据完成,每次只针对一只股票。 (请原谅任何安全问题,例如密码被加盐和散列,因为问题的目的是关于组织)

【问题讨论】:

    标签: mysql sql database


    【解决方案1】:

    简单地说:不。尽管您可能希望将列添加到历史价格中。

    您可能还想要一个市场表并使用查找表来进行行业、部门、可能的预测 - 这可能应该是(预测)在一个单独的表中......一个日期(这样您就可以查看回到过去的预测)。

    【讨论】:

      猜你喜欢
      • 2010-12-04
      • 2021-12-14
      • 1970-01-01
      • 2021-11-15
      • 1970-01-01
      • 1970-01-01
      • 2011-03-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多