0
我有一个页面,显示了领先榜分数已在系统中,存储在我的数据库中注册的所有用户添加新的价值。MySQL的更新值与旧值
表1:
Points_hisotry
表:
| points_id || user_id(fk) || point_hist |
|___________||_____________||____________|
| 1 || 10 || 100 |
|___________||_____________||____________|
| 2 || 11 || 30 |
|___________||_____________||____________|
| 3 || 11 || 70 |
|___________||_____________||____________|
| 4 || 11 || 200 |
表2:
Users
表:
| users_id || username || firstname || lastname ||
|__________||___________||____________||__________||
| 10 || alan1 || Alan || Smith ||
|__________||___________||____________||__________||
| 11 || Jaz12 || Jass || Hopal ||
|__________||___________||____________||__________||
| 12 || Shubs || shubs || hawash ||
|__________||___________||____________||__________||
| 13 || John || Rob || engli ||
在points_history
表,我有3行与同users_id
,我需要他们来概括,所以我最终与总Point_hist
为users_id
应加起来300
我需要一个查询来帮我加入这些表格,然后将相同的users_id
的行相加为一,然后在记分板上打印出来。
我已经试过很多的查询,但我还没有得到它的权利。
下面是我的一些PHP从leaderboard.php:
$sql = "SELECT * FROM users, points_history WHERE users.users_id = points_history.users_id";
$user_query = mysqli_query($db_conx, $sql);
while ($row = mysqli_fetch_array($user_query, MYSQLI_ASSOC)) {
$username = $row ["username"];
$point_hist = $row["point_hist"];
上面的查询是打印出所有username
的,从以上两个表自己的观点。
我是新来这个,所以我需要一些帮助,请。
上面的代码工作,但它让我对整个表给每个用户的total_points。而不是每个用户对每个用户的total_points。 @kingkero – user3443701
我想我需要一个'WHERE'条件来声明WHERE users.users_id ='$ id'',但是我会如何将它添加到上面的查询中。 @kingkero – user3443701
@ user3443701 Mhm在我的[小提琴](http://sqlfiddle.com/#!2/17964a/6)它的工作,也许尝试'GROUP BY points_history.users_id' – kero