我需要构建一个MySQL查询,我可以根据一个或多个列值对结果进行分组,然后返回该组中匹配某些条件的完整记录。MySQL需要返回组内结果集中的特定记录
采取如下图所示为代表我的数据表:
| ID | NAME | Editor | Modified date | Type |
| 1 | doc1 | Smith | 2012-01-01 | A |
| 2 | doc2 | Smith | 2012-03-03 | A |
| 3 | doc1 | Jones | 2012-10-10 | A |
| 4 | doc1 | Scott | 2011-01-01 | A |
| 5 | doc2 | Boyd | 2013-01-01 | A |
| 6 | doc3 | Smith | 2010-01-01 | B |
| 7 | doc4 | Smith | 2010-03-03 | B |
| 8 | doc3 | Jones | 2010-10-10 | B |
| 9 | doc3 | Scott | 2009-01-01 | B |
| 10 | doc4 | Boyd | 2011-01-01 | B |
我要回有关的任何文件,即最近修改的记录。
| ID | NAME | Editor | Modified date | Type |
| 3 | doc1 | Jones | 2012-10-10 | A |
| 5 | doc2 | Boyd | 2013-01-01 | A |
| 8 | doc3 | Jones | 2010-10-10 | B |
| 10 | doc4 | Boyd | 2011-01-01 | B |
或与之相关的A型
| ID | NAME | Editor | Modified date | Type |
| 3 | doc1 | Jones | 2012-10-10 | A |
| 5 | doc2 | Boyd | 2013-01-01 | A |
我试图GROUP BY和HAVING而据我所知,他们将不会返回整个记录的moste最近修改的记录。
附录:这可能是我需要阿尔特的“最近”预选赛“之前给定的日期”
要返回的两个结果是相互排斥的,不是吗? – 2013-02-13 15:41:43
对于第一个结果,您是否尝试过“按修改日期的NAME排序”? – Slowcoder 2013-02-13 15:52:06