对于一个虚拟示例,假设我有一个包含以下行的数据库:
book
,
author
(=A列)
publish-date
(=B列)。
现在,我想对这些书进行分类,这样行就由作者组合在一起了,但是作者必须以这样的顺序出现:最近出版的作者排在第一位。每一位作者的书必须按出版日期分类。
输出示例:
BOOK AUTHOR PUBLISH-DATE # COMMENT
some book John Doe 2019 # most recent book => John Doe is first
another book John Doe 2017
one more John Doe 2011
again a book Richard Roe 2016 # Richard Roe is second because this is the most recent book amongst the remaining ones.
and one more Richard Roe 2008
another one Janie Doe 2013 # and so on.
(以上例子的解释:多伊之所以排在第一位,是因为他最近写了一本书。但他其他的书都是紧接着展出的,按出版日期倒序排列。接下来是理查德·罗,因为他是最近出版一本书的第二位作家。等等。)
基本上,不是用
ORDER BY author ASC, publish-date DESC
,我想在第三列中的最大值之后,重新排列给定作者的书籍组。
我不知道如何在mysql中解决这个问题,也不知道如何调用这种排序。我希望你能帮助我^提前谢谢!