从两个表中获取信息

发布于 2024-12-18 12:04:53 字数 365 浏览 1 评论 0原文

我有两个表,其中包含以下信息,

models

id      manufactor 
1       Mercedes
2       Ford
3       Volvo

orders
car_id customer_id
1      4
1      22
2      54
1      95

我想要一个查询,该查询将给出一行制造商名称以及每种型号的销售量。

这是我尝试过的:

SELECT
  m.make
FROM models m
LEFT JOIN(
    SELECT COUNT(*)FROM orders
) o on o.car_id = m.id

I have two tables that contain the following information

models

id      manufactor 
1       Mercedes
2       Ford
3       Volvo

orders
car_id customer_id
1      4
1      22
2      54
1      95

I want a query that will give in one row manufactor name and how many of each model are sold.

Here is what I have tried:

SELECT
  m.make
FROM models m
LEFT JOIN(
    SELECT COUNT(*)FROM orders
) o on o.car_id = m.id

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

抽个烟儿 2024-12-25 12:04:53

试试这个:

SELECT m.manufactor, COUNT(o.car_id)
FROM models m
LEFT JOIN orders o ON m.id = o.car_id
GROUP BY o.car_id

Try this:

SELECT m.manufactor, COUNT(o.car_id)
FROM models m
LEFT JOIN orders o ON m.id = o.car_id
GROUP BY o.car_id
泪意 2024-12-25 12:04:53

您可以按如下方式更改查询

SELECT
m.make,o.totcount
FROM models m
LEFT JOIN(
SELECT COUNT(*) as totcount FROM orders group by car_id
) o on m.id = o.car_id

you can change the query as follows

SELECT
m.make,o.totcount
FROM models m
LEFT JOIN(
SELECT COUNT(*) as totcount FROM orders group by car_id
) o on m.id = o.car_id
甜心小果奶 2024-12-25 12:04:53
SELECT m.make, sum(o.car_id) as total_sold FROM models as m 
LEFT JOIN SELECT  * from orders as o on o.car_id=m.id group 
by o.car_id order by o.car_id
SELECT m.make, sum(o.car_id) as total_sold FROM models as m 
LEFT JOIN SELECT  * from orders as o on o.car_id=m.id group 
by o.car_id order by o.car_id
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文