2010-07-07 49 views
1

我正在计划自动化工作中的统计过程,并决定使用MySQL来存储数据。用于简易统计的MySQL

我工作了旅游信息中心,所以统计(每月一次)看起来是这样的:

Date:  1 2 3 4 5 6 7 8 9 10 ...
Museum  5 3 12 34 1 ...
Kremlin 5 1 43 12 9...

因此,第一列是对象的列表(不同类型,由如观光,酒店,餐馆等),第一行是月份的日期列表。在他们的十字架上 - 询问他们的信息的人数。

那么,什么是最好的,正确的,最快的方式来做到这一点在MySQL?

我的意思是我应该创建多少个表格,以及如何(如每月一张表或其他方式?)以及如何正确放入信息,因此将很容易检查信息,如 “有多少人访问过克里姆林宫从7月1日到8月25日?“或“2010年有多少人访问过博物馆?”等),

非常感谢您提前。 而对于我的英语很抱歉,)

UPD:我刨做一个PROGRAMM,这样我就可以按“博物馆”按钮,它会增加在特定日期的数量。

回答

3

我只是将日期和类型的访问记录在一个原始表中。然后你可以通过SQL查询得到你需要的任何统计数据。

+1

借调。理想的数据库存储您愿意收集的所有信息。 SQL中的Q用于查询;也就是说,为报告提取信息。 – Borealid 2010-07-07 09:12:00

+0

(顺便说一句 - 可以肯定的是,我不是指网站统计,只是真正的一个人,访问我们的办公室) Grigy,谢谢你的回答,但你是什么意思“原始表”?我该如何制作这样的桌子? 我打算制作一个程序,所以我只需按“博物馆”按钮,它会增加特定日期的数量。 – peaceprayer 2010-07-07 10:34:01

+0

原材料我的意思是没有真正的结构 - (ID,日期,类型,...)。您不需要将计数存储在表中,您需要执行选择语句(在您的博物馆按钮上)并获得计数。 – grigy 2010-07-07 10:54:46

1

我认为最好的办法是有2个表 1. “布拉格观光”(ID,姓名) 2.主要统计数据表(ID,sightseeings_id,日期,ppl_count)

之后,你可以写1所有...像

SELECT SUM(ppl_count) FROM `main_statistics_table` WHERE date > 'from_date' AND date < 'to_date' AND sightseeing_id = 1 

* main_statistics_table SQL查询是主要的统计数据表 statistics_id的名字是从statistics_table行的id,这将需要

+0

+1,因为这正是我的意思是在一个“算法”形式和平喷射器通缉。只有一个建议 - 使用SQL语句的代码标记使其更具可读性。 – grigy 2010-07-08 11:58:21