Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql:在列中计数(使用联接)_Mysql_Join_Count - Fatal编程技术网

Mysql:在列中计数(使用联接)

Mysql:在列中计数(使用联接),mysql,join,count,Mysql,Join,Count,我有以下疑问: Table zone: zone_id, country_id, city_id SELECT zone.zone_id, city_name FROM zone INNER JOIN city ON city.city_id = zone.city_id WHERE country_id = 3 结果: zone_id | city_id ---------------------- 17 | New York 16 | Los Angeles 和其他

我有以下疑问:

Table zone: zone_id, country_id, city_id

SELECT zone.zone_id, city_name
FROM zone
INNER JOIN city
ON city.city_id = zone.city_id
WHERE country_id = 3
结果:

zone_id | city_id
----------------------
17      | New York
16      | Los Angeles
和其他查询:

Table zone , Table management relation: zone_id

SELECT COUNT(user_id)
FROM management
WHERE zone_id = 17

SELECT COUNT(user_id)
FROM management
WHERE zone_id = 16
结果

first query: Count             second query:  Count
             -------                          --------
             5                                2
如何将count()连接到第一个查询结果的每一行?方法如下:

zone_id | city_id      | users
--------------------------------
17      | New York     | 5
16      | Los Angeles  | 2
我试过这个:

SELECT zone.zone_id, vNombre, COUNT(user_id) AS users
FROM zone
INNER JOIN city
ON city.city_id = zone.city_id
INNER JOIN management
ON management.zone_id = zone.zone_id
WHERE country_id = 3
GROUP BY user_id
但我发现:

zone_id | city_id      | users
--------------------------------
17      | New York     | 5
17      | New York     | 2
SELECT   zone_id, city_name, COUNT(user_id) AS users
FROM     zone
  INNER JOIN city       USING (city_id)
   LEFT JOIN management USING (zone_id)
WHERE    country_id = 3
GROUP BY zone_id, city_name