하위 쿼리를 사용하여 MySQL 쿼리에서 선택한 GROUP BY 결과를 순서대로 정렬 할 수 있습니까? 내 대형 데이터 세트에서 하위 쿼리가 내 쿼리에 상당한로드 시간을 추가한다는 것을 알았습니다. 여기 MySQL이 조인, 그룹화, 선택 항목 선택
비슷한 상황이 작동 내 코드입니다 how to sort order of LEFT JOIN in SQL query?하지만 부하에 너무 오래 걸립니다 :
SELECT tags.contact_id, n.last
FROM tags
LEFT JOIN (SELECT * FROM names ORDER BY timestamp DESC) n
ON (n.contact_id=tags.contact_id)
WHERE tags.tag='$tag'
GROUP BY tags.contact_id
ORDER BY n.last ASC;
나는 간단한 승에 참여하고 빠른 결과를 얻을 수 있습니다/테이블 이름이지만 "group by"명령은 나에게 마지막 행이 아니라 조인 된 테이블의 첫 번째 행을 제공합니다.
1 .) 주문에 사용 된 필드에 색인이 있습니까? 2.) 색인의 반대 방향으로 주문하면 색인이 더 느려지므로 색인이 각 사례에 대해 오름차순 또는 내림차순으로 표시되면 신중하게 선택하십시오. – Alfabravo