mssql的sql语句转成oracle版的sql语句
String sqlc="select TOP "+pageSize+" c.requestid,c.id from (select ROW_NUMBER() OVER (ORDER BY b.requestid) AS RowNumber,b.* from ufy8u0r71323765286250 a join ufj6t3x81323765312984 b on a.requestid=b.requestid where a.requestid in (select id from workflowbase where isdelete=0 and isfinished=1) and a.requestid in (select id from workflowbase where isdelete=0 and isfinished=1)";
追问:select TOP "+pageSize+" c.requestid,c.id from (select ROW_NUMBER() OVER (ORDER BY b.requestid) AS RowNumber,b.* from ufy8u0r71323765286250 a join ufj6t3x81323765312984 b on a.requestid=b.requestid where a.requestid in (select id from workflowbase where isdelete=0 and isfinished=1) ) c WHERE c.RowNumber > "+pageSize*(pageNo-1)+" group by c.requestid,c.id order by c.requestid
答案:大概是这样,我没有看到你的c是什么,哪儿有ID ?
String sqlc="SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (
select a.requestid
from ufy8u0r71323765286250 a
join ufj6t3x81323765312984 b on a.requestid=b.requestid
where a.requestid in (select id from workflowbase where isdelete=0 and isfinished=1)
and a.requestid in (select id from workflowbase where isdelete=0 and isfinished=1)
) A WHERE ROWNUM <= "+pageSize+" ) WHERE RN >= 1";
其他:把top去掉,在where后面添加 limit ((当前页的页码-1)*pageSize-1),pageSize
上一个:mssql 表,有250万个记录,10万条分一页,求分页查询语句。(注意没有自增长的id。)
下一个:mssql 分组查询