SQL“分组依据”具有最大日期或同一日期的所有结果的 VarChar 字段
假设我有这个表,
--------------------------------------------------------------
| ID | DATE | GROUPNAME | RESULT | INFO1 | INFO2 |
--------------------------------------------------------------
| 1 | 01/06 | Group1 | 12345 | Abc | xxxx |
| 2 | 01/04 | Group2 | 54321 | AAA | zzzz |
| 3 | 01/03 | Group3 | 11111 | BBB | zzzz |
| 4 | 01/06 | Group1 | 22222 | Def | xxxx |
| 5 | 01/02 | Group3 | 33333 | CCC | yyyy |
--------------------------------------------------------------
我想要进行一个查询,选择每个 groupname
的最大日期,并返回该 groupname
中该日期的所有结果。并按 groupname
排序,
例如,我的结果将是
1 | 01/06 | Group1 | 12345 | Abc | xxxx
4 | 01/06 | Group1 | 22222 | Def | xxxx
2 | 01/04 | Group2 | 54321 | AAA | zzzz
3 | 01/03 | Group3 | 11111 | BBB | zzzz
生成该结果集的有效查询是什么?
谢谢你!
Lets say I have this table
--------------------------------------------------------------
| ID | DATE | GROUPNAME | RESULT | INFO1 | INFO2 |
--------------------------------------------------------------
| 1 | 01/06 | Group1 | 12345 | Abc | xxxx |
| 2 | 01/04 | Group2 | 54321 | AAA | zzzz |
| 3 | 01/03 | Group3 | 11111 | BBB | zzzz |
| 4 | 01/06 | Group1 | 22222 | Def | xxxx |
| 5 | 01/02 | Group3 | 33333 | CCC | yyyy |
--------------------------------------------------------------
I want to make a query that selects the max date of each groupname
and return all results of that date from that groupname
. And order by the groupname
E.g., My result would be
1 | 01/06 | Group1 | 12345 | Abc | xxxx
4 | 01/06 | Group1 | 22222 | Def | xxxx
2 | 01/04 | Group2 | 54321 | AAA | zzzz
3 | 01/03 | Group3 | 11111 | BBB | zzzz
What would be an efficient query to produce that result set?
Thank you!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
除非我错过了什么:
Unless I'm missing something:
试试这个:
try this: