Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.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_Sql - Fatal编程技术网

Mysql 显示每个客户从伦敦发出的订单数量

Mysql 显示每个客户从伦敦发出的订单数量,mysql,sql,Mysql,Sql,给出两张表:客户和订单 _____顾客 客户识别码 客户名称 联系人姓名 .... 城市 国 1. 阿尔弗雷德·福特基斯特 玛丽亚·安德 .... 柏林 德国 4. 号角周围 哈代 .... 伦敦 英国 我认为您可以通过加入customer和order表,然后从customer\u表中选择customer\u id,然后使用订单总数来实现这一点 查询示例: SELECT c.customer_id, count(distinct o.order_id) FROM cu

给出两张表:客户和订单

_____顾客

客户识别码 客户名称 联系人姓名 .... 城市 国 1. 阿尔弗雷德·福特基斯特 玛丽亚·安德 .... 柏林 德国 4. 号角周围 哈代 .... 伦敦 英国
我认为您可以通过加入customer和order表,然后从customer\u表中选择customer\u id,然后使用订单总数来实现这一点 查询示例:

SELECT
       c.customer_id,
       count(distinct o.order_id)
FROM customers as c
LEFT JOIN orders as o on o.customer_id = c.customer_id
WHERE c.city = 'London'
GROUP BY c.customer_id

你在那里走了大半段路。你需要做几件事:

  • 聚集
  • 修复
    连接
    条件
将“客户id”加入“发货人id”有意义吗?不太可能——尤其是当两个表都有
客户id

SELECT c.customer_id, COUNT(*) as num_orders
FROM customers c INNER JOIN
     orders o 
     ON c.customer_id = o.customer_id 
WHERE c.city = 'London'
GROUP BY c.customer_id;
我把两张桌子调换了一下。我只是觉得从客户到订单更自然


请注意,这仅返回至少有一个订单的客户。我猜,要成为“客户”,必须有人下订单。

请阅读,这样你可以在提问时自己进行格式化。问题中有一个提示(“你的解决方案应该包含两列”),那么为什么要选择这将给出所有列,问题中还有另外两个提示:1)显示金额,2)按每位客户列出。你应该根据这些提示做点什么。(除了在这里询问如何做……)