我有一张表列出了系统许可证,每个系统(过期的和现有的)的多个许可证。我只在这个问题上发布了两列,因为它们是唯一重要的。每个唯一列值获取一条记录
| id | systemid |
| 1 | 1 |
| 2 | 1 |
| 3 | 2 |
| 4 | 2 |
| 5 | 3 |
| 6 | 3 |
我需要的2,4和6
我需要收集1个结果为每个SYSTEMID的ID来获得的行和它是最早的(最小的)记录,所以在这种情况下,具有最高ID的记录。我一直在探索GROUP BY
,ORDER BY
和LIMIT
,但我没有产生我追求的结果。如何为一列中的每个单独值收集一条记录并确保它是最高ID的记录?
我知道这是错的,但它就是我目前在主演:
SELECT * FROM licences GROUP BY systemid ORDER BY id DESC LIMIT 1
'select max(id),systemid from licenseid by systemid'也许? – Chrisky
Chrisky现货,你应该添加它作为答案:) – Arbiter
这里的箭头不会自己点击... – Chrisky