내 목표:
쿼리하여 건물이 건설 중인 모든 지역을 제공합니다.
내 질문:
모든 건물을 동일한 건물과 비교하면(upgrade_id 비교) 쿼리가 영원히 계속됩니다. where 문의 마지막 부분이 없으면 1초가 걸리므로 완전히 괜찮습니다.
테이블 설정
지역은 수시로 변경되며 현재 타임스탬프와 함께 매일 저장됩니다.
Province_has_building 테이블에는 지방에서 건물까지의 다대다 관계가 포함되어 있습니다. 각 건물에는 업그레이드 ID -> 건물 유형 및 상태가 있습니다.
쿼리
으아아아
설명
테이블 |
유형 |
가능한 키 |
키 |
참고 |
알았어 |
필터링됨 |
추가 |
하나 |
참고 |
메인, fk_province_game1_idx |
fk_province_game1_idx |
상시 |
237387 |
100.00 |
|
a_pb |
참고 |
메인, fk_building_has_province_province1_idx, fk_building_has_province_building1_idx |
fk_building_has_province_province1_idx |
testing.a.province_id |
1 |
100.00 |
색인 사용 |
a_b |
eq_ref |
초등학교, 중학교 |
메인 |
testing.a_pb.building_id |
1 |
100.00 |
|
b_b |
참고 |
초등학교, 중학교 |
중학교 |
test.a_b.upgrade_id |
9 |
100.00 |
|
b_pb |
참고 |
메인, fk_building_has_province_province1_idx, fk_building_has_province_building1_idx |
메인 |
testing.b_b.building_id |
1026 |
100.00 |
색인 사용 |
b |
참고 |
메인 |
메인 |
testing.b_pb.province_id |
1 |
5.00 |
사용장소 |
일부 복합 인덱스 추가:
으아아아province_has_building
가 "다대다 매핑 테이블"인 경우 더 많은 가속 팁을 보려면 다대다를 참조하세요.자세한 논의를 원하시면 제공해주세요
SHOW CREATE TABLE
.복합 인덱스를 추가할 때 선행 열이 동일한 인덱스를 제거하세요. 즉, INDEX(a)와 INDEX(a,b)가 모두 있는 경우 전자를 삭제합니다.