php - MySQL 从一个单独的表中选择一个键

标签 php mysql

我目前正在从一组位置的 MySQL 表中获取数据,这里是我目前拥有的

$query = "SELECT Name, CountryCode, Population FROM City WHERE (Population > '6000000') ORDER BY Population DESC";
$result = mysqli_query($link, $query);

while($row = mysqli_fetch_array($result)) {
        echo "<tr>";

        echo "<td>$row[0]</td>";
        echo "<td>$row[1]</td>";
        echo "<td>$row[2]</td>";

        echo "</tr>\n";
}
mysql_close($link);

我想弄清楚的是如何将 CountryCode 转换为实际的国家/地区。这是我调用国家/地区表以获取名称的方式

SELECT Name FROM Country WHERE Code = 'CountryCode';

我如何将这两个语句合并为一个?

编辑:这是我要做的工作。这是否被视为 JOIN?

$query = "SELECT a.Name, a.CountryCode, a.Population, b.Code, b.Name FROM City a, Country b WHERE (a.CountryCode = b.Code) AND (a.Population > '6000000') ORDER BY Population DESC";
$result = mysqli_query($link, $query);

while($row = mysqli_fetch_array($result)) {
        echo "<tr>";

        echo "<td>$row[0]</td>";
        echo "<td>$row[2]</td>";
        echo "<td>$row[4]</td>";

        echo "</tr>\n";
}
mysql_close($link);

最佳答案

你需要连接具有一个主键和一个外键的 City 表和 Country 表。

阅读有关 Natural Join 的信息。这很容易。

关于php - MySQL 从一个单独的表中选择一个键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32786371/

相关文章:

php - Laravel Eloquent 错误地更新每一行值

MySql If 没有第二个结果

mysql - 最好使用什么 SQL 权限来满足最流行的 CMS 的要求

php - 每个字符的多对多查询未加载 - 如何让它显示/编辑/添加?

PHP 和 SQL 空间问题

php - 将更新的谷歌地图可拖动标记的纬度和经度传递到另一个页面

mysql - 将分隔值转换为逗号分隔列表

mysql - 我需要帮助正确编写 MySQL 查询

mysql - 即使 mysqld 在端口 3306 上运行,也无法连接到 'localhost:3306' 上的 MySQL 服务器

php - 如何在 Laravel 中做一个简单的重定向?