1. 程式人生 > >mysql、sqlserver、oracle分頁方法封裝

mysql、sqlserver、oracle分頁方法封裝

public static String getPagingSql(int pageNum, int pageSize,String sql){
        if(pageNum < 1) pageNum = 1;
        if(pageSize < 0) pageSize = 1;
        String wrapSql = "";
        int startRow = ((pageNum - 1) * pageSize) + 1;
        int endRow = pageNum * pageSize ;
        if(isOracle
()){ wrapSql = "SELECT * FROM(SELECT A .*, ROWNUM RN FROM ("+sql+") A WHERE ROWNUM <= "+endRow+" ) WHERE RN >= "+ startRow; }else if(isMySql()){ wrapSql = "select A.* FROM (" + sql + ") A LIMIT " + startRow + "," + endRow; }else if(isMsSql()){ wrapSql =
"SELECT * FROM (SELECT TOP "+startRow+" w.* FROM ( SELECT TOP "+endRow+" A.* FROM ( "+sql+" ) A ) w ) w2"; } return wrapSql; }