这是一个通用分页库产生的代码,根据图片的注释,如果去掉前面的fundTime排序放到后面是正常,这是为什么呢?
1 SELECT * FROM (SELECT ROW_NUMBER() OVER(ORDER BY fundTime desc) as row_number,* FROM( A.userID 2 from yw_user_fundlog A LEFT JOIN yw_user B ON A.userID=B.userID where 1=1 AND (B.name LIKE '%440%' OR B.mobile LIKE'%440%') group by A.userID,convert(varchar(10), fundTime,20))t) tt WHERE tt.row_number between 1 and 10
问题解决,只要先分组,然后再排序就好了。
试试 ORDER BY fundTime
依然放前面,在 GROUP BY
中加上 fundTime 列名
在上 funTime就不能达到的目的了,我是按照日期来进行分类,不是每条记录。
集合是没有顺序的,对于子查询,请移除order by子句,或者 top 100 percent+order by 组合使用