select *
from (select page.*, rownum rn
from (select t.*,
/////////// rl.role_stype as role_stype,
case
when eu.eu_sdef1 = '0' and u2.ud_sno is not null then
u2.ud_sname
when eu.eu_sdef1 = '0' and u1.ud_sno is not null then
u1.ud_sname
when eu.eu_sdef1 = '0' and u.ud_sno is not null then
u.ud_sname
when eu.eu_sdef1 = '1' then
u3.ud_sname
end as ud_sname,
case eu.eu_sdef1
when '0' then
e.emp_sno
when '1' then
st.st_sno
end as user_sno
from mng_user t
left join mng_empuser eu on eu.userid = t.userid
left join mng_emp e on e.emp_sno = eu.emp_sno
and e.emp_sisdel = '0'
left join mng_UnitDepart u on u.ud_sno = e.ud_sno
left join mng_UnitDepart u1 on u1.ud_sno = e.ud_sno1
left join mng_UnitDepart u2 on u2.ud_sno = e.ud_sno2
left join mng_student st on st.st_sno = eu.emp_sno
and st.st_sisdel = '0'
left join mng_UnitDepart u3 on u3.ud_sno = st.ud_sno
/////////left join mng_userrole ul on t.userid = ul.userid
/////////left join mng_role rl on ul.role_sno = rl.role_sno
order by t.userid) page
where rownum <= 15)
where rn >= 1
这条语句查询效率 贼慢 求大神给优化一下
如果不加 上 用/////标注的语句 效率 还行 加上之后效率就下来了 求优化
from (select page.*, rownum rn
from (select t.*,
/////////// rl.role_stype as role_stype,
case
when eu.eu_sdef1 = '0' and u2.ud_sno is not null then
u2.ud_sname
when eu.eu_sdef1 = '0' and u1.ud_sno is not null then
u1.ud_sname
when eu.eu_sdef1 = '0' and u.ud_sno is not null then
u.ud_sname
when eu.eu_sdef1 = '1' then
u3.ud_sname
end as ud_sname,
case eu.eu_sdef1
when '0' then
e.emp_sno
when '1' then
st.st_sno
end as user_sno
from mng_user t
left join mng_empuser eu on eu.userid = t.userid
left join mng_emp e on e.emp_sno = eu.emp_sno
and e.emp_sisdel = '0'
left join mng_UnitDepart u on u.ud_sno = e.ud_sno
left join mng_UnitDepart u1 on u1.ud_sno = e.ud_sno1
left join mng_UnitDepart u2 on u2.ud_sno = e.ud_sno2
left join mng_student st on st.st_sno = eu.emp_sno
and st.st_sisdel = '0'
left join mng_UnitDepart u3 on u3.ud_sno = st.ud_sno
/////////left join mng_userrole ul on t.userid = ul.userid
/////////left join mng_role rl on ul.role_sno = rl.role_sno
order by t.userid) page
where rownum <= 15)
where rn >= 1
这条语句查询效率 贼慢 求大神给优化一下
如果不加 上 用/////标注的语句 效率 还行 加上之后效率就下来了 求优化
