mysql中group by的排序问题

今日写个小程序,需要用到在mysql中group by 之后排序,但是出现几个问题。数据如下:

但是如果你用group by order by xxx desc发现结果并不是这样的。其实这样只是对group by之后的结果再进行的order by。而mysql还不支持先order by再进行group by

发现group by的结果是根据id进行升序排列的。但是我实际上是需要反序进行排列。

有2个方法我自己找的,一个是通过alter table来解决,另外一个是子查询。 alter table的结果是以后只能进行降序排列了,但是好处是还是可以用到原来的索引,而用子查询基本是全扫描.

 

 

 

 

 

 

###########################################

Best regards
Timo Seven
blog: http://www.timoseven.com
twitter: http://twitter.com/zauc
Linux System Admin & MySQL DBA

关于 Timo
XNIX SA & MYSQL DBA

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s

%d 博主赞过: