我设置了一个 MySQL 数据库,用于跟踪程序运行时的所有 session ,并跟踪各种变量。
我不太擅长 SQL,我想看看是否可以从 1 个特定用户获取所有数据以及我想要的变量数据,并将其全部添加到一起。
数据库的结构看起来像这样
id - username - data1- data2- data3- timestamp
0 - name1 - 0- 0- 0-10/10/2010
0 - name2 - 0- 0- 0-10/10/2010
0 - name3 - 0- 0- 0-10/10/2010
0 - name1 - 0- 0- 0-10/10/2010
0 - name1 - 0- 0- 0-10/10/2010
0 - name3 - 0- 0- 0-10/10/2010
这只是一个例子,我想在 PHP 表中显示信息,其中包含每个用户的数据总数,按照我当前的设置方式进行操作,它将在表中为每个 session 创建一行由用户而不是全部相加。这是我的 SQL 调用
$sql = 'SELECT *
FROM database
ORDER BY data1 DESC';
我的 php 代码是
<?php
$no = 1;
$runtime = 0;
$profit = 0;
$deaths = 0;
while ($row = mysqli_fetch_array($query))
{
$amount = $row['profit'] == 0 ? '' : number_format($row['profit']);
echo '<tr>
<td>'.$no.'</td>
<td>'.$row['username'].'</td>
<td>'.convert_seconds($row['runtime']).'</td>
<td>'.number_format($row['profit']).'</td>
<td>'.$row['deaths'].'</td>
</tr>';
$runtime += $row['runtime'];
$profit += $row['profit'];
$deaths += $row['deaths'];
$no++;
}?>
我知道某些变量不匹配,这只是我的代码的一个示例。我怎样才能让它从我的数据库中获取数据并添加每个用户名的所有 session 并显示出来?
最佳答案
您需要使用“GROUP BY”子句,然后对相关列进行求和。
喜欢:
SELECT username, SUM(data1), SUM(data2), SUM(data3)
FROM database
GROUP BY username
关于php - 从 SQL 数据库获取信息并使用 PHP 显示的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53608374/