语句一:
--取分段起始时间
SELECT TJRQ
INTO START_DATE
FROM (SELECT TT1.TJRQ, ROWNUM ROWNO
FROM (
SELECT T.TJRQ TJRQ
FROM WORK_INFO_MAIN M, WORK_INFO_CHILD T, DJ_NSRXX D
WHERE M.SERIAL_NO = T.SERIAL_NO
AND T.NSRSBH = D.NSRSBH
AND T.YXZT_DM = '3'
AND (T.LSSJ = 0 OR T.LSSJ IS NULL)
AND D.CGS_FLAG = 1
AND M.CZRY_DM = C_USER.USER_ID
ORDER BY TJRQ
) TT1)
WHERE ROWNO = START_NUM;语句二:
---取分段结束时间
SELECT TJRQ
INTO END_DATE
FROM (SELECT TT1.TJRQ, ROWNUM ROWNO
FROM (
SELECT T.TJRQ TJRQ
FROM WORK_INFO_MAIN M, WORK_INFO_CHILD T, DJ_NSRXX D
WHERE M.SERIAL_NO = T.SERIAL_NO
AND T.NSRSBH = D.NSRSBH
AND T.YXZT_DM = '3'
AND (T.LSSJ = 0 OR T.LSSJ IS NULL)
AND D.CGS_FLAG = 1
AND M.CZRY_DM = C_USER.USER_ID
ORDER BY TJRQ
) TT1)
WHERE ROWNO = END_NUM;
--取分段起始时间
SELECT TJRQ
INTO START_DATE
FROM (SELECT TT1.TJRQ, ROWNUM ROWNO
FROM (
SELECT T.TJRQ TJRQ
FROM WORK_INFO_MAIN M, WORK_INFO_CHILD T, DJ_NSRXX D
WHERE M.SERIAL_NO = T.SERIAL_NO
AND T.NSRSBH = D.NSRSBH
AND T.YXZT_DM = '3'
AND (T.LSSJ = 0 OR T.LSSJ IS NULL)
AND D.CGS_FLAG = 1
AND M.CZRY_DM = C_USER.USER_ID
ORDER BY TJRQ
) TT1)
WHERE ROWNO = START_NUM;语句二:
---取分段结束时间
SELECT TJRQ
INTO END_DATE
FROM (SELECT TT1.TJRQ, ROWNUM ROWNO
FROM (
SELECT T.TJRQ TJRQ
FROM WORK_INFO_MAIN M, WORK_INFO_CHILD T, DJ_NSRXX D
WHERE M.SERIAL_NO = T.SERIAL_NO
AND T.NSRSBH = D.NSRSBH
AND T.YXZT_DM = '3'
AND (T.LSSJ = 0 OR T.LSSJ IS NULL)
AND D.CGS_FLAG = 1
AND M.CZRY_DM = C_USER.USER_ID
ORDER BY TJRQ
) TT1)
WHERE ROWNO = END_NUM;
SELECT MIN(NSRSBH), MAX(NSRSBH)
INTO START_WSPZH, END_WSPZH
FROM (SELECT NSRSBH
FROM (SELECT TT1.NSRSBH, ROWNUM ROWNO
FROM (SELECT T.NSRSBH
FROM WORK_INFO_MAIN M, WORK_INFO_CHILD T, DJ_NSRXX D
WHERE M.SERIAL_NO = T.SERIAL_NO AND
T.NSRSBH = D.NSRSBH AND
T.YXZT_DM = '3' AND
(T.LSSJ = 0 OR T.LSSJ IS NULL) AND
D.CGS_FLAG = 1 AND
M.CZRY_DM = C_USER.USER_ID
ORDER BY TJRQ
) TT1)
WHERE ROWNO BETWEEN START_NUM AND END_NUM);
上面的是
WHERE ROWNO = START_NUM; 下面的条件是
WHERE ROWNO = END_NUM;
INTO START_DATE
FROM (SELECT TT1.TJRQ, ROWNUM ROWNO
FROM (
SELECT T.TJRQ TJRQ
FROM WORK_INFO_MAIN M, WORK_INFO_CHILD T, DJ_NSRXX D
WHERE M.SERIAL_NO = T.SERIAL_NO
AND T.NSRSBH = D.NSRSBH
AND T.YXZT_DM = '3'
AND (T.LSSJ = 0 OR T.LSSJ IS NULL)
AND D.CGS_FLAG = 1
AND M.CZRY_DM = C_USER.USER_ID
ORDER BY TJRQ
) TT1)
WHERE ROWNO = START_NUM or ROWNO = END_NUM
(SELECT TT1.TJRQ, ROWNUM ROWNO
FROM (SELECT T.TJRQ TJRQ
FROM WORK_INFO_MAIN M, WORK_INFO_CHILD T, DJ_NSRXX D
WHERE M.SERIAL_NO = T.SERIAL_NO AND
T.NSRSBH = D.NSRSBH AND
T.YXZT_DM = '3' AND
(T.LSSJ = 0 OR T.LSSJ IS NULL) AND
D.CGS_FLAG = 1 AND
M.CZRY_DM = C_USER.USER_ID
ORDER BY TJRQ) TT1)
SELECT a.TJRQ, b.TJRQ
INTO START_DATE, END_DATE
FROM NEW_WORK a, NEW_WORK b
WHERE a.ROWNO = START_NUM AND
b.ROWNO = END_NUM)