아래와 같은 쿼리문에서 데이타 베이스가 락이 걸려서 전체적인 속도가 느려진다고 하는데요.
어떻게 개선시켜야 하는지 ...답변 부탁드립니다.
SELECT con.c_content_id,'zuku' as sect,con.title,MIN(con.open_end_date) as open_start_date,MAX(con.open_end_date) as open_end_date,con.content_running_min,con.pdf_name,con.teacher_name,con.start,con.end, if (con.c_content_id IN (select distinct c_content_id from c_bbs_access_log where c_member_id=36854 and flag=6),'duplicated','') as duplicated, if ((con.start<=now() and (con.end>=now() or con.end=0000-00-00)),'ok','') as saisei
FROM ( SELECT c.c_content_id,c.title,k.open_end_date,c.content_running_min,c.pdf_name,c.teacher_name,
c.open_start_date as start,c.open_end_date as end
FROM c_zuku_kousyusei_only_content k,c_content c,c_member m,c_content_id_info i
WHERE m.c_member_id=36854
AND m.c_member_id=k.c_member_id
AND m.gakunen_cd=k.gakunen_cd
AND (k.open_start_date<=now() or k.open_start_date=0000-00-00)
AND (k.open_end_date>=now() or k.open_end_date=0000-00-00)
AND ((k.c_content_id=c.c_content_id) or (k.c_content_pack_id=i.option_id AND i.option_flg=0 AND i.c_content_id=c. c_content_id))
UNION ALL
SELECT c.c_content_id,c.title,z.open_end_date,c.content_running_min,c.pdf_name,c.teacher_name,
c.open_start_date as start,c.open_end_date as end
FROM c_zukusei_only_content z,c_content c,c_member m,c_content_id_info i
WHERE m.c_member_id=36854
AND m.block_id=z.block_id
AND m.gakunen_cd=z.gakunen_cd
AND (z.open_start_date<=now() or z.open_start_date=0000-00-00)
AND (z.open_end_date>=now() or z.open_end_date=0000-00-00)
AND ((z.c_content_id=c.c_content_id) or (z.c_content_pack_id=i.option_id AND i.option_flg=0
AND i.c_content_id=c.c_content_id))
) con GROUP BY con.c_content_id
|