我正在尝试获取 5 位数据,其中 5 位来自 tbl_playerstats
这些列是
StatsID
Score
Kills
Deaths
Rank
我正在努力解决
StatsID
链接到另一个名为 tbl_playerdata
的表在这个表中
PlayerID
与 StatsID
相同,它们的值是数字,也在这个 tbl_playerdata
是 SoldierName
,这是我试图代替 StatsID
的东西,最终目标是只有这些显示:SoldierName
Score
Kills
Deaths
Rank
到目前为止,我的代码看起来像这样(减去数据库连接详细信息
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT StatsID, Score, Kills, Deaths, Rounds FROM tbl_playerstats Limit 10";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "<br> Soldier: ". $row["StatsID"]. "<p> Score: ". $row["Score"]. "<p> Kills: ". $row["Kills"]. " <p>Deaths: " . $row["Deaths"] . $row["Rounds"] . "<br>";
}
} else {
echo "0 results";
}
$conn->close();
我用谷歌搜索过,看起来使用
JOIN
是可行的方法,我发现的示例对我不起作用,这可能是因为我不知道我想要做什么。 最佳答案
使用 StatsID
和 PlayerID
连接两个表
<?php
$sql = "SELECT tps.*, tpd.* FROM tbl_playerstats tps, tbl_playerdata tpd WHERE tps.StatsID = tpd.PlayerID Limit 10";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "<br> Soldier: ". $row["SoldierName"]. "<p> Score: ". $row["Score"]. "<p> Kills: ". $row["Kills"]. " <p>Deaths: " . $row["Deaths"] . $row["Rounds"] . "<br>";
}
} else {
echo "0 results";
}?>
关于php - 2张表,3列需要1个值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45278028/