用offset语法做分页
如下
DECLARE @pageIndex int = 1, @pageSize int = 80; DECLARE @today datetime = CAST(GETDATE() AS DATE); WITH t AS ( SELECT ggw.Id, ggw.DaoRuTime, ggw.SheBeiBianHaoNType + '-' + ggw.SheBeiBianHaoNQuHua + ggw.SheBeiBianHaoNNum AS SheBeiBianHaoN, jms.Id AS bdJmsId, ISNULL(jms.Name, '-') AS bdJmsName FROM tlw_GuangGaoWei_DianTi ggw LEFT JOIN tlw_JiaMengShang_GGW jw ON jw.ggwId = ggw.Id AND jw.tStart <= @today AND jw.tEnd >= @today LEFT JOIN tlw_JiaMengShang_Info jms ON jms.Id = jw.jmsId ) SELECT ROW_NUMBER() OVER (ORDER BY DaoRuTime ASC) AS RowNum, TotalRows = COUNT(*) OVER (), Id, DaoRuTime, SheBeiBianHaoN, bdJmsId, bdJmsName FROM t where t.DaoRuTime >'2024-01-01' ORDER BY DaoRuTime ASC OFFSET ((@pageIndex - 1) * @pageSize) ROWS FETCH NEXT @pageSize ROWS ONLY;
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号