首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在SQL中重新计算每个用户在数据库中的总发帖和更新

问在SQL中重新计算每个用户在数据库中的总发帖和更新
EN

Stack Overflow用户
提问于 2014-03-31 14:28:22
回答 1查看 369关注 0票数 0

因此,我有一个脚本,它需要更新每个用户的总上传量并存储到user表中。

我有一个函数,可以计算每个用户上传的数量,但没有存储到数据库中,我的站点已经在运行,而且我无法手动更新这个繁忙的站点,因为这些帖子是不停的。

下面是我的功能来统计上传..。

代码语言:javascript
复制
function get_row_count($table, $suffix = "") {
   $res = SQL_Query_exec("SELECT COUNT(*) FROM $table $suffix");
   $row = mysql_fetch_row($res);
  return $row[0];

}

users表如下所示

代码语言:javascript
复制
[users table]
 id             username        numuploads      numcomments

上传表如下所示

代码语言:javascript
复制
[uploads table]
  fileid      userid          added             enabled

因此,我如何运行一个SQL查询来计算每个用户从上传表中上传的数量,并在没有手动操作的情况下将其更新到每个用户的numuploads中。

谢谢..

编辑

代码语言:javascript
复制
UPDATE users SET numuploads = (SELECT COUNT(id) as numuploads FROM uploads WHERE owner = users.id)

问题现在解决了,

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-31 14:30:07

与其选择计数作为单独的查询,然后添加1和更新某些DB列,您还可以直接进行更新:

代码语言:javascript
复制
UPDATE table SET number = number + 1 WHERE id = <ID>

当用户执行新的注释/上载时,每次都应该运行此查询,并要求number列为数值类型,默认值设置为0(零)。上面的查询只是一个您应该更改以满足您的DB方案的示例。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22764271

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档