如何实现SQL表中各ID分组内的Age字段排序?
按ID分组内对Age字段排序的SQL实现
原始数据表:
| ID | Age |
|---|---|
| 1 | 9 |
| 1 | 2 |
| 1 | 5 |
| 2 | 10 |
| 2 | 7 |
| 3 | 12 |
期望结果(每个ID对应的子集中按Age升序排列):
| ID | Age |
|---|---|
| 1 | 2 |
| 1 | 5 |
| 1 | 9 |
| 2 | 7 |
| 2 | 10 |
| 3 | 12 |
解决方案SQL语句
SELECT ID, Age FROM your_table_name ORDER BY ID, Age ASC;
说明
ORDER BY ID会先将所有记录按ID归类,确保相同ID的记录集中在一起- 后续的
Age ASC会在每个ID的分组内部,对Age字段进行升序排序;如果需要降序,将ASC替换为DESC即可
内容的提问来源于stack exchange,提问作者Guillaume
相关产品推荐
相关产品推荐

