首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从三个连接表中根据列得到不同的min和最大值

从三个连接表中根据列得到不同的min和最大值
EN

Stack Overflow用户
提问于 2015-04-01 18:52:40
回答 1查看 39关注 0票数 0

我想弄清楚一家汽车制造商生产汽车的最早年份和最近一年。我有以下三张桌子。该年只与特定的模型相关联,因此我需要加入所有三个表,以便每年将其与make关联起来。然后我要选择每一个制造的最小年和最大年。

制作表

代码语言:javascript
运行
复制
make_id     make_name
1           Acura
2           Alfa Romeo
3           Aston Martin

模型表

代码语言:javascript
运行
复制
model_id    make_id    model_name
10          1          Integra
11          1          MDX
12          1          Legend
13          2          Milano
14          2          Quadrifoglio
15          3          Rapide

年份表

代码语言:javascript
运行
复制
year_id     model_id   year
100         10         1996
101         11         2001
102         12         1992
103         13         1989
104         14         1974
105         15         2013

我希望得到以下结果:

代码语言:javascript
运行
复制
make_id    make_name       lowest_model_year    highest_model_year
1          Acura           1996                 2001
2          Alfa Romeo      1974                 1989
3          Aston Martin    2013                 2013
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-01 20:49:17

试试这个:

代码语言:javascript
运行
复制
select 
  make.make_id as make_id,
  make.make_name as make_name,
  MIN(`year`) as lowest_model_year,
  MAX(`year`) as highest_model_year
from make 
  left join model on model.make_id = make.make_id 
  left join year on year.model_id = model.model_id
  group by make.make_id
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29398560

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档