Oracle数据库SQL总结
1Oracle时间段的查询
1.1 场景:根据用户输入的时间段过滤出相应记录。
1.2 解决办法:
第一种写法:
SELECT B.*, RN FROM (SELECT A.*, ROWNUM AS RN2 FROM (SELECT XXKC.WID, ... ROWNUM AS RN FROM T_PY_XXKC XXKC LEFT JOIN T_PY_KC KC ON KC.KCDM = XXKC.XXKCDM ORDER BY XXKC.XXKCDM) A) B WHERE B.RN2 > v_start AND B.RN2 <= (((v_start/10) + 1) * v_limit )?这样,便可以利用前台传来的v_start(起始页)和v_limit(每页显示条数)和计算得出的totalCount(总页数)进行分页显示。此外RowNum还可以用来取某个结果集中的最大值,思路就是将结果集进行降序排序后取出rn = 1的记录就是最大值了,呵呵很简单吧!
?
?