我目前正在从一组位置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转换为实际国家/地区。这是我如何调用country表来获取名称
SELECT Name FROM Country WHERE Code = 'CountryCode';
我如何将这两个陈述合并为一个?
编辑:这是我的工作。这被认为是一个加入吗?$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);
答案 0 :(得分:0)
你需要加入具有一个主键和一个外键的City表和Country表。
了解自然加入。这很容易。
答案 1 :(得分:0)
您可以使用此查询:
$query = "SELECT city.Name,country.Name,city.CountryCode,city.Population from city INNER JOIN country where country.CountryCode=city.CountryCode and city.population>5000 ORDER BY city.Population DESC";
这很好。