因此,我有一个脚本,它需要更新每个用户的总上传量并存储到user表中。
我有一个函数,可以计算每个用户上传的数量,但没有存储到数据库中,我的站点已经在运行,而且我无法手动更新这个繁忙的站点,因为这些帖子是不停的。
下面是我的功能来统计上传..。
function get_row_count($table, $suffix = "") {
$res = SQL_Query_exec("SELECT COUNT(*) FROM $table $suffix");
$row = mysql_fetch_row($res);
return $row[0];}
users表如下所示
[users table]
id username numuploads numcomments上传表如下所示
[uploads table]
fileid userid added enabled因此,我如何运行一个SQL查询来计算每个用户从上传表中上传的数量,并在没有手动操作的情况下将其更新到每个用户的numuploads中。
谢谢..
编辑
UPDATE users SET numuploads = (SELECT COUNT(id) as numuploads FROM uploads WHERE owner = users.id)问题现在解决了,
发布于 2014-03-31 14:30:07
与其选择计数作为单独的查询,然后添加1和更新某些DB列,您还可以直接进行更新:
UPDATE table SET number = number + 1 WHERE id = <ID>当用户执行新的注释/上载时,每次都应该运行此查询,并要求number列为数值类型,默认值设置为0(零)。上面的查询只是一个您应该更改以满足您的DB方案的示例。
https://stackoverflow.com/questions/22764271
复制相似问题