对于网站访问计数,您更喜欢哪种表格方案?
对于方案a: 检查IP是否退出,我们将计数增加一步,不添加新的IP。
对于方案b: 我们每次都会添加新IP,为了报告,我们在应用程序中使用GroupBY。
答案 0 :(得分:2)
为什么?
请参阅,对于一位访问者,您只存储一条记录。访问者不能有多条记录,就像您有一个客户有多个地址一样。在这种情况下,地址是多个。但客户只会是一个。同样的情况也适用于您的示例。
您无需通过为同一用户/访问者多次添加相同的行来增加数据库大小。
对于 SELECT ,您需要获取多条记录,但大部分记录都相同。
因此,如果您按照方式2,则为具有相同IP的一个访问者插入1000个条目。 如果您按照方式1进行操作,则有1个条目可以使用countVisited进行更新。现在告诉我是获取1000行更快还是获取1 ??
如果您想更新某些参数,您需要在1000条记录中搜索访问者记录,然后进行修改。你可以告诉自己哪种方式更好。