0

我正在考虑做一些数学计算来计算数据库中所有用户拥有的“信用”总量。

我有一个数据库,其中包含一个名为 users 的表,其中包含用户 ID、用户名、电子邮件和信用列。我想知道是否有一种方法可以将所有结果显示在表格中,例如用户 ID、用户名、电子邮件和积分作为表格列,然后在底部显示所有用户积分的总数:

 UserID | Username | Email Address | Credits
 -------+----------+---------------+--------
    1   | example  | e@mail1.com   |    4 
    2   | another  | e@mail2.com   |    3
    3   | lastone  | e@mail3.com   |    1
 -------+----------+---------------+--------
        |          | Total Credits |    8
 -------+----------+---------------+--------

我想知道这是否可能以及您可以使用 mySQL 数据库和 PHP 进行的任何其他数学方程式

奥利弗

4

4 回答 4

2

如果您需要在一个查询中完成所有操作,则可以WITH ROLLUP在某些条件下使用。

http://dev.mysql.com/doc/refman/5.0/en/group-by-modifiers.html

特别是,请阅读该链接底部的评论,以获取与您尝试执行的操作相关的示例。

就个人而言,我更喜欢单独或在应用程序端进行聚合。

于 2011-12-08T18:11:45.557 回答
1

您可以使用SUM(Credits) as Total Credits. 更多信息在这里

于 2011-12-08T18:14:45.833 回答
0

你可以这样做:

select UserId, Username, EmailAddress, Credits from users order by userid
union
select '' as UserId,'' as Username,'Total Credits' as email,sum(credits) as credits from users;
于 2011-12-08T18:12:13.713 回答
0

首先,您只需在 MySQL 中创建数据库,如果您不知道如何创建这里的语法,您只需运行查询,但不要忘记先创建数据库。

创建表 mhs(UserID INT NOT NULL AUTO_INCREMENT PRIMARY KEY,例如 varchar(20)、Email_Address varchar(30)、Credits INT)

现在执行数据库后,我们只需要使用 php 文件对其进行配置。

这是php中的代码列表,您可以选择编写自己的代码

<?php

showdatame();
function showdatame()
{
$inttotalcredits=0;
$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("praktikum", $con);

$result = mysql_query("SELECT * FROM mhs");

echo "<table border='1'>
<tr>
<th>UserId</th>
<th>UserName</th>
<th>Email Adress</th>
<th>Credits</th>
</tr>";

while($row = mysql_fetch_array($result))
{
echo "<tr>";
echo "<td>" . $row[0] . "</td>";
echo "<td>" . $row[1] . "</td>";
echo "<td>" . $row[2] . "</td>";
echo "<td>" . $row[3] . "</td>";
$inttotalcredits += $row[3];
echo "</tr>";
}
echo "<td>" . "" . "</td>";
echo "<td>" . "" . "</td>";
echo "<td>" . "Total Credits" . "</td>";
echo "<td>" . $inttotalcredits . "</td>";

echo "</table>";
mysql_close($con);   
}

?>

我希望这对你很有帮助。

于 2011-12-08T18:30:36.587 回答