我下载了一个几乎所有国家和城市的数据库表。
表格显示如下:
location_id - >名称 - > location_type - > PARENT_ID
location_type是位置的类型,0等于country,1等于city。
parent_id是位置为城市时国家/地区的ID。
我想为这样的用户显示数据:
城市,国家名称。
Ex: Lisbon, Portugal
使用Json打印
你们可以帮我构建这个查询吗?
我的查询:
$locations = mysqli_query($con, "SELECT name, location_id, parent_id FROM location WHERE location_type = 1 ");
$locarray = array();
while ($row = mysqli_fetch_assoc($locations))
{
$locarray[] = $row;
}
正如您所看到的,我只展示城市,我想从城市获取parent_id,并从该城市所在的国家/地区打印名称。
感谢。
答案 0 :(得分:1)
试试这个
SELECT c2.name,c1.name, c1.location_id, c1.parent_id
FROM
location c1 join location c2 on c1.`parent_id`=c2.`location_id`
WHERE c1.location_type = 1