我有一个包含文件的表格,他们有他们的分数/分数。我正在尝试总结这些要点并打印出来。我有一个用于 id 文件的 where 子句,但如果我选择随机文件,它的分数与其他文件相同,例如 where 子句不起作用。
每个文件的 $id 都是正确的。
这是我的查询:
$result = mysql_query("SELECT *,SUM(body) FROM soubory, users, hodnoti WHERE
soubory.id='".$id."' AND soubory.users_id = users.id");
霍德诺蒂表
users_ID soubory_id body
14 44 7
15 44 9
现在,如果 soubory_id = 45 没有记录(在表 hodnoti 中),则结果与 44 相同,尽管有 where 子句。
用户表
id nick
14 user1
15 user2
计算表
id nazev users_id
44 file1 14
45 file2 14
该查询应该可以帮助我打印:
谁上传的,文件的nazev(title)然后点。但是如果 file2 在表 hodnoti 中没有记录,仍然有 file1 的分数。希望对您有所帮助。
最佳答案
$sql = "SELECT *, SUM(hodnoti.body) as sum FROM soubory
INNER JOIN users ON soubory.users_id = users.id
INNER JOIN hodnoti ON soubory.id = hodnoti.soubory_id
WHERE soubory.id='".$id."' ";
$result = mysql_query($sql);
这个查询对我有用。当我设置 id=44 并获得结果时,当设置 id=45 并获得所有空值时。我附上了两个结果图像。我刚刚创建表并插入您给定的数据并在 phpmyadmin sql 选项卡查询框中运行查询。您可以试试这个来检查您的查询是否有效。
关于php - 表中的 SUM 点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23179714/