SELECT DISTINCT NAME FROM (
select NAME,LEVEL L from t_workers T
where level<=3
CONNECT BY PRIOR NAME=NAME AND PRIOR TRUNC(workdate)=TRUNC(workdate)+1
)WHERE L=3 AND ROWNUM<=10
select NAME,LEVEL L from t_workers T
where level<=3
CONNECT BY PRIOR NAME=NAME AND PRIOR TRUNC(workdate)=TRUNC(workdate)+1
)WHERE L=3 AND ROWNUM<=10
SELECT DISTINCT NAME
FROM (select NAME, LEVEL L
from (SELECT * FROM t_workers WHERE NUMBERS > 50) T
where level <= 3
CONNECT BY PRIOR NAME = NAME
AND PRIOR TRUNC(workdate) = TRUNC(workdate) + 1)
WHERE L = 3
AND ROWNUM <= 10
FROM (
select NAME, LEVEL L from (
SELECT * FROM t_workers
WHERE NUMBERS > 50
and to_char(workdate,'hh24:mi')betwwen '10:00' and '15:00'
) T
where level <= 3
CONNECT BY PRIOR NAME = NAME
AND PRIOR TRUNC(workdate) = TRUNC(workdate) + 1)
WHERE L = 3
AND ROWNUM <= 10
加个条件就完了
FROM (select NAME, LEVEL L
from (SELECT * FROM t_workers WHERE NUMBERS > 50 and to_char(sysdate,'HH24') > 10 and to_char(sysdate,'HH24') < 15) T
where level <= 3
CONNECT BY PRIOR NAME = NAME
AND PRIOR TRUNC(workdate) = TRUNC(workdate) + 1)
WHERE L = 3
AND ROWNUM <= 10