MySQL: 递增排序重复的数字
P粉763748806
P粉763748806 2023-07-25 12:41:47
0
1
574
<p>我有一个表格,看起来像这样:</p> <table class="s-table"> <thead> <tr> <th>id</th> <th>values</th> </tr> </thead> <tbody> <tr> <td>1</td> <td>1</td> </tr> <tr> <td>2</td> <td>1</td> </tr> <tr> <td>3</td> <td>1</td> </tr> <tr> <td>4</td> <td>2</td> </tr> <tr> <td>5</td> <td>2</td> </tr> <tr> <td>6</td> <td>2</td> </tr> </tbody> </table> <p>我想要在某种循环中按照这种方式对它们进行递增排序。</p> <table class="s-table"> <thead> <tr> <th>id</th> <th>values</th> </tr> </thead> <tbody> <tr> <td>1</td> <td>1</td> </tr> <tr> <td>4</td> <td>2</td> </tr> <tr> <td>2</td> <td>1</td> </tr> <tr> <td>5</td> <td>2</td> </tr> <tr> <td>3</td> <td>1</td> </tr> <tr> <td>6</td> <td>2</td> </tr> </tbody> </table> <p>我相信这可以很容易地用PHP完成,但是我想看看是否可以使用SQL来实现。</p>
P粉763748806
P粉763748806

全部回复(1)
P粉501683874

在ORDER BY子句中使用ROW_NUMBER()窗口函数:

SELECT *
FROM tablename
ORDER BY ROW_NUMBER() OVER (PARTITION BY `values` ORDER BY id), 
         `values`;

可以看看这个 demo.

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板