0
4 테이블 간의 조인 결과를 지정하고 싶습니다. - 쿼리 순서 (b.SITE_ID)에 대한 인덱스를 작성하면 쿼리 성능이 향상됩니까?조인 결과를 정렬 할 때 인덱스가 성능을 향상시키지 않습니다
SELECT b.SERVICE_ID, b.ATT_ID, b.SITE_ID, b.ATT_VALUE, c.KEY_NAME, d.NAME as account_name
FROM SITE_ATTRIBUTES a , SF_SITE_ATTRIBUTES b, ATTRIBUTE_DEF c,SF_SITE_MASTER d
WHERE a.SERVICE_ID=b.SERVICE_ID
and b.SERVICE_ID=c.SERVICE_ID
and b.SERVICE_ID=d.SERVICE_ID
and [email protected]_id COLLATE utf8_unicode_ci
and b.ATT_ID= c.ID
and b.ATT_ID= a.ATT_DEF
and a.SITE=b.SITE_id
and b.SITE_ID = d.ID
and a.value != b.att_value
and b.att_value is not null
ORDER BY b.SITE_ID
생각 그것은하지 않습니다 순서는 즉시 데이터 정렬을 변경해야하기 때문에
생각합니다. 하지만 당신은 Explain 분석을 시도하고 점검해야합니다. 성능 질문에는'EXPLAIN ANALYZE'와 테이블 크기, 인덱스, 현재 시간 성능, 원하는 시간 등에 대한 정보가 포함되어야합니다.'느림 '이란 상대적인 용어이며 비교할 실제 가치가 필요합니다. \t \t [** MySQL **] (http://dba.stackexchange.com/questions/15371/how-do-i-get-the-execution-plan-for-a-view) –
이 부분을 읽으십시오. DBA 스택 교환 질문 : http://dba.stackexchange.com/questions/11031/order-by-column-should-have-index-or-not ... 아마도 대답은 아마 예 –
그리고 정말로 읽어야합니다. 이. Explosion JOIN의 사용을 홍보하십시오, Aaron Bertrand는 멋진 기사를 작성했습니다 : [오래된 스타일의 JOIN을 사용하는 나쁜 습관] (http://sqlblog.com/blogs/aaron_bertrand/archive/2009/10/08/bad 그것에 대해 - 살기 -에 - 사용 - 오래된 - 스타일 조인 .aspx). –