gpt4 book ai didi

mysql - 合并两个 MySQL 表中的数据

转载 作者:行者123 更新时间:2023-11-29 12:04:28 24 4
gpt4 key购买 nike

我无法在在线游戏社区的表之间组合数据。在我的数据库中,我有两个表(以及其中的值):

Statsme2 ----> 玩家 ID 头 胸部 胃 左臂 右臂 左左 右腿

玩家 ---> 姓氏、玩家 ID、镜头

“Statsme2”中的玩家 ID 与“玩家”中的玩家 ID 相同...并且对应于“玩家”中的姓氏(用户姓名的打印输出)。

我希望数据显示为:

名称 |爆头百分比

用户1 | % 放在这里

用户2 | % 放在这里

我让它打印出统计数据,但不是每个用户打印 1 行,而是为每个用户打印数百行。

如何将所有实例合并到每个用户的一行中?请参阅附图以供引用(Statsme2 表):

An image of the Statsme2 table

    <?php
// Make a MySQL Connection
connection data in here
// Get specific data from table
$result = mysql_query("SELECT ((shots)/(BodyParts.head) * 100) as 'Head', Player.lastName as 'Name', shots
FROM hlstats_Events_Statsme2 BodyParts
JOIN hlstats_Players Player ON BodyParts.playerId=Player.playerId
WHERE Player.lastName NOT LIKE '%BOT%' AND Player.lastName NOT LIKE '%infected%' AND Player.lastName NOT LIKE '%witch%' AND connection_time > '36000';")
or die(mysql_error());
echo "<table class=\"tablesorter-blackice\">";
echo "<thead>";
echo "<tr><th>Player</th><th>% Of Head Shots</th></tr>";
echo "</thead>";
echo "<tbody>";
// keeps getting the next row until there are no more to get
while($row = mysql_fetch_array( $result )) {
// Print out the contents of each row into a table
echo "<tr><td>";
echo $row['Name'];
echo "</td><td>";
echo round($row['Head'],2)."%";
echo "</td></tr>";
}
echo "</tbody>";
echo "</table>";
mysql_close();
?>

这就是它的样子,而不是将所有行平均为每个用户一行:

Current output

最佳答案

您需要按“lastName”列对结果进行分组。那么查询就会像这样,

SELECT players.lastName, Statsme2.head
FROM players
JOIN Statsme2
ON players.playerid = Statsme2.playerid
GROUP BY players.lastName

关于mysql - 合并两个 MySQL 表中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31778359/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com