sql优化
406/350
select * from (
select rownumber() over() as rownumber_, row_.*
from (
select distinct alias_sp_cms_info.c_node_id as id, alias_file.c_type_id as type,
alias_sp_cms_info.c_prop_top_level_s as top_level, alias_sp_cms_info.c_prop_order_num_s as order_num
from t_file_permission_split alias_fp, t_file_cms_info_s alias_sp_cms_info, t_file alias_file
where (
(
(
(
(
(
(
(
(alias_sp_cms_info.c_path like ?)
and (alias_sp_cms_info.c_prop_validate_time_s <= ?)
)
and (
(alias_sp_cms_info.c_prop_invalidate_time_s is null)
or (alias_sp_cms_info.c_prop_invalidate_time_s > ?)
)
)
and (alias_sp_cms_info.c_prop_character_s <> ?)
)
and ((alias_file.c_status = ?)
or (alias_file.c_status = ?))
)
and ((alias_sp_cms_info.c_prop_info_test_s is null)
or (alias_sp_cms_info.c_prop_info_test_s = ?))
)
and (alias_sp_cms_info.c_prop_character_s = alias_sp_cms_info.c_prop_character_s)
)
and (alias_sp_cms_info.c_node_id = alias_file.c_id)
)
and
(
(alias_sp_cms_info.c_node_id = alias_fp.c_file_id)
and exists
(select c_permission_id from t_permission_set where c_permission_id = alias_fp.C_PERMISSION_ID and c_allow_type=0 and
((c_owner_type = 'user' and c_owner_id = 2)
or (c_owner_type = 'group' and c_owner_id in (937, 938))))
and not exists (select c_permission_id from t_permission_set where c_permission_id = alias_fp.C_PERMISSION_ID and
c_allow_type=1 and alias_fp.C_PERMISSION_TYPE = 1 and ((c_owner_type = 'user' and c_owner_id = 2) or (c_owner_type = 'group'
and c_owner_id in (937, 938)))))) order by alias_sp_cms_info.c_prop_top_level_s desc, alias_sp_cms_info.c_prop_order_num_s
desc ) as row_ ) as temp_ where rownumber_ <= ?
不知道这条语句与什么优化的空间没有
|