gpt4 book ai didi

php - MySQL 如何限制 JOIN 查询的行数仅来自第一个表而不是第二个表?

转载 作者:行者123 更新时间:2023-11-29 21:59:37 27 4
gpt4 key购买 nike

我有两张表,一张是国家/地区,第二张是城市。

第一个表是国家/地区

国家ID |国家/地区名称

第二个表是城市

国家ID |城市ID |城市名称

我想将第二个表的查询量限制为 3 个城市。因为一个国家有很多个城市。我只需要 5 个城市。

我的查询:

$query = “SELECT c.country_name, p.city_name FROM (SELECT * FROM Cities LIMIT 3) AS p LEFT JOIN Countries as c ON p.county_id = c.county_id”;ter code here

$result = mysqli_query($db, $query);

$my_array = array();

while($row = mysqli_fetch_assoc){
array_push($my_array, $row);
}

如果我填写 $my_array,我会从数据库中得到 3 个结果

我的输出:

[0] => 数组 ( [国家/地区名称] => 国家/地区 1 [城市名称] => 城市 1 )

[1] => 数组 ( [国家/地区名称] => 国家/地区 1 [城市名称] => 城市 2 )

[2] => 数组 ( [国家/地区名称] => 国家/地区 1 [城市名称] => 城市 3 )

我需要这样的东西

County 1-----------------------City 1 of Country 1City 2 of Country 1City 3 of Country 1City 4 of Country 1City 5 of Country 1County 2-----------------------City 1 of Country 2City 2 of Country 2City 3 of Country 2City 4 of Country 2City 5 of Country 2County 3-----------------------City 1 of Country 3City 2 of Country 3City 3 of Country 3City 4 of Country 3City 5 of Country 3

我做错了什么?我使用MySQL 5.6.26

谢谢。

最佳答案

就这样?

SELECT city_id, city_name FROM Cities AS p LEFT JOIN Countries AS c ON c.country_id = p.country_id WHERE c.country_id = 'id' LIMIT 0,5

关于php - MySQL 如何限制 JOIN 查询的行数仅来自第一个表而不是第二个表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32780472/

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