쿼리의 시간이 오래걸려요 ㅠㅠ 0 1 1,757

by 임호균 [SQL Query] mysql [2023.02.28 13:51:23]


select * from discount_event de
where de.limited_count > 0 and state = 'available'
  and de.limited_count <= (select count(*) from g5_order o where de.de_idx = o.de_idx and o.is_payed='Y')

mysql 을 사용중입니다.

이번에 이벤트 할인을 개발하며 선착순 기능이 들어가 있어서 order테이블에서 몇개를 사용했는지 보고있습니다.

문제는 g5_order 의 갯수가 4만5천건이 넘어가며 쿼리 조회 대기시간동안 서버가 너무 느려지는 현상이 발생합니다 ㅠㅠ

저 쿼리문을 어떻게 해야 개선할수있을까요?

 

by 마농 [2023.02.28 16:54:37]

g5_order 테이블에 de_idx 항목에 인덱스 있니요?
이왕이면 is_payed 항목과 함께 결합인덱스이면 더 좋습니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입