首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在使用MySql维护组的同时进行排序

在使用MySql维护组的同时进行排序
EN

Stack Overflow用户
提问于 2012-01-30 04:21:35
回答 1查看 85关注 0票数 1

希望这是可能的-

有一张这样的桌子:

代码语言:javascript
复制
Car_ID    Brand    Model      Year
----------------------------------
   1      Ford      Focus       2012
   1      Ford      Mustang     1992
   2      Toyota    Yaris       2005
   3      BMW       1s          1995
   4      VW        Polo        2010
   4      VW        Golf        2002
   4      VW        Beetle      2007

希望它像这样点菜:

代码语言:javascript
复制
Car_ID    Brand    Model      Year
----------------------------------
   1      Ford      Focus       2012
   1      Ford      Mustang     1992

   4      VW        Polo        2010
   4      VW        Beetle      2007
   4      VW        Golf        2002

   2      Toyota    Yaris       2005

   3      BMW       1s          1995

因此,拥有最新车型的品牌是第一位的,其次是该品牌的其他车型,其次是最新车型。其次是拥有第二款最新车型的品牌,以及该品牌的其他车型,最新款

  • 等等。

如果可以的话,有什么想法吗?

-答案-我的答案是错的,当我再测试的时候,威尔会发帖回来。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-30 04:56:20

代码语言:javascript
复制
mysql>     SELECT cars.*
    -> 
    ->       FROM cars
    ->       JOIN ( SELECT Name_ID, MAX(Year) AS max_year 
    ->              FROM cars 
    ->              GROUP BY Name_ID )
    ->         AS dt_max
    ->      USING (Name_ID)
    -> 
    ->   ORDER BY max_year DESC, Name_ID, Year DESC;
+---------+--------+---------+------+
| Name_ID | Brand  | Model   | Year |
+---------+--------+---------+------+
|       1 | Ford   | Focus   | 2012 |
|       1 | Ford   | Mustang | 1992 |
|       4 | VW     | Polo    | 2010 |
|       4 | VW     | Beetle  | 2007 |
|       4 | VW     | Golf    | 2002 |
|       2 | Toyota | Yaris   | 2005 |
|       3 | BMW    | 1s      | 1995 |
+---------+--------+---------+------+
7 rows in set (0.00 sec)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9059305

复制
相关文章

相似问题

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