计算Php、Mysql中的内容视图

计算Php、Mysql中的内容视图,php,mysql,sql,Php,Mysql,Sql,嗨,我正在创建一个简单的新闻网站,我需要计算新闻浏览量。目前我有25000行和25列。点击次数会像Joomla一样每重新加载一页都会增加。我应该如何组织表格? 对于这个问题,我有两种方法: 在内容表中创建名为hits的列 创建一个包含两列的新表:content\u id和hits 我使用了第一种方法,我认为这会降低我的网站速度。第二种方法会比第一种更好吗?有更好的方法吗?我不知道您在MySQL或PHP中的逻辑是什么,也不知道您当前的新闻表结构是什么,但我建议您在MySQL中使用存储过程 Begi

嗨,我正在创建一个简单的新闻网站,我需要计算新闻浏览量。目前我有25000行和25列。点击次数会像Joomla一样每重新加载一页都会增加。我应该如何组织表格? 对于这个问题,我有两种方法:

  • 在内容表中创建名为
    hits
    的列
  • 创建一个包含两列的新表:
    content\u id
    hits

  • 我使用了第一种方法,我认为这会降低我的网站速度。第二种方法会比第一种更好吗?有更好的方法吗?

    我不知道您在MySQL或PHP中的逻辑是什么,也不知道您当前的新闻表结构是什么,但我建议您在MySQL中使用存储过程

    Begin
       update tblnews set hits = hits+1;
       select news from tblnews;
    End
    
    当然也可以使用PHP PDO编写的语句来提高性能


    如果您试图获取最近10条新闻或类似的内容,那么必须为内容设置索引,比如说带有自动增量的主键,以便更好地检索查询,否则甚至不要使用内容id列。我认为桌子不应该有硬结构。这肯定会提高性能,我希望超过100000000行不会产生太大的影响。我认为没有其他更好的解决方案,因为这两个查询需要在每个页面视图中执行。

    选项1听起来最好。选项2是多余的,因为您只需要存储点击。同样,您需要一个连接查询来拉取点击

    选项1听起来最好。选项2是多余的,我不认为仅仅这个查询就降低了你的网站速度。我想你应该1。检查代码中是否存在冗余查询和2。检查您的内容表(即内容id应该是一个自动递增的主索引)。在选项2中:我认为更新2列表比更新25列表更快:)。错了吗?谢谢你的回复。我要试试