计算来自不同国家/地区的客户,国家/地区表将不会加入客户表(Oracle)

时间:2016-03-04 19:20:18

标签: sql oracle join

我正在尝试计算来自每个国家/地区的客户数量,但该声明似乎不起作用。它一直说无效的标识符。

客户位于customer_details表中,然后国家/地区名称由另一个表格中的country_id确定。

我似乎无法使这个陈述发挥作用。

SELECT country.country, count(*) AS customer_count
FROM customer_details
INNER JOIN country
ON customer_details.country_id = country.country_id
GROUP by country.country
ORDER by country.country;

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

您需要以下查询(假设有一个名为customer_id的列):

SELECT country.country, count(customer_details.customer_id) AS customer_count
FROM country
INNER JOIN customer_details
ON customer_details.country_id = country.country_id
GROUP by country.country
ORDER by country.country;

编辑:您提到您有一个名为customer_name,地址等的列。您可以使用这些列中的任何一列,因为join子句只会获取国家/地区的结果提到并group by子句将确保结果将按国家/地区名称分组。

希望这有帮助!!!