通常情况下,我只需搜索谷歌一个问题并找到答案,但我知道我的SQL数据库并不是一件事,所以我从头开始。
我的问题是如何格式化/组织我拥有的数据,而不是像电子表格那样简单。我认为它将被格式化的方式将导致数十万个单独的表,这似乎不对。这是我的数据,也许有人可以指出我在如何在mySQL数据库中组织它的正确方向,这样它不仅有条理,而且可以根据每个人生成报告“点“数据:
我从网站的特定网址上删除了产品评论,让我们举例说明亚马逊。我需要按照他们留在亚马逊上的顺序保留评论。
为了保持这一点,我会说我已经从亚马逊的三个不同网址上删除了产品评论:
http://amazon.com/product/12345-x
http://amazon.com/product/12345-y
http://amazon.com/product/12345-z
因此,从这三个网址中的每个网址中,每个网址上有3个不同的人留下了评论。所以我认为它将存储在数据库中(这可能不对)将是这样的:
TABLE FOR PRODUCT 12345-X
REVIEW NUMBER REVIEWER THEIR REVIEW NAME OF PRODUCT PRODUCT PRICE REVIEW LEFT ON
1 username great product some product $399 monday
2 username crappy product wednesday
3 username okay product wednesday
TABLE FOR PRODUCT 12345-Y
REVIEW NUMBER REVIEWER THEIR REVIEW NAME OF PRODUCT PRODUCT PRICE REVIEW LEFT ON ON
1 username great product some product $399 monday
2 username crappy product wednesday
3 username okay product wednesday
TABLE FOR PRODUCT 12345-Z
REVIEW NUMBER REVIEWER THEIR REVIEW NAME OF PRODUCT PRODUCT PRICE REVIEW LEFT ON ON
1 username great product some product $399 monday
2 username crappy product wednesday
3 username okay product wednesday
现在,由于我已经获得了数千种产品的数据,这显然会导致数千个表格,而且这不是组织事物的正确/最佳方式。
为了使事情变得更糟/更复杂,有时同一产品的价格会发生变化,所以它以两种不同的价格(实际上是很多不同的价格)出售。我还希望能够获得以超过一个价格出售的每个“相同产品”的“平均价格”,并显示最常留下的日评价和整体评价。基于每个产品。
因此,您可以看到我需要能够不仅在每个产品上生成报告,而且还要为每个产品中的每个“列”数据生成报告......这将导致更多的表格。
有人可以指出我在数据库中如何组织这些数据的正确方向吗?
如果我要求的内容过于荒谬可以回答我道歉,我甚至不知道如何在数据库中组织这个,甚至不知道从哪里开始(键入google的短语)。
答案 0 :(得分:2)
如果我找对你,你想存储不同的东西: 1个产品 2评论每个产品 3该人的数据如何划分评论名称......
所以你需要的只是表。
TABLE FOR PRODUCT
ProductID P_Price P_Name
1 399 Name X
2 299 Name y
3 199 Name z
TABLE FOR Review
ReviewID ProductID Review R_Date UserID
1 2 Review for y 1/1/2012 1
2 1 Review for x 1/1/2010 2
3 3 Review for z 4/4/2009 2
Table for User
UserID U_Name
1 Peter
2 Simon
所以现在你可以,例如看到西蒙为X和Z写了一个Rewiev。每个产品都有一个评论。 一般情况下,如果必须在运行时创建表,则需要进行实际操作。 Tabes始终是一个修复策略,只有在您决定进行一些重大更改(例如向每个用户添加密码)时才会更改。 当你添加新评论这样的新信息时,你总是只添加一个或多个托管。
我认为你应该得到一本关于MySQL的书或长篇教程(或者你曾经使用过的),其中hopfuly是关于数据组织的重要章节。
我希望我能帮到你。