>  기사  >  데이터 베이스  >  mysql 데이터 그룹화 및 정렬 및 SELECT 절 순서

mysql 데이터 그룹화 및 정렬 및 SELECT 절 순서

巴扎黑
巴扎黑원래의
2017-05-09 13:50:002303검색

mysql 그룹화 및 정렬

GROUP BY와 ORDER BY는 종종 동일한 작업을 수행하지만 매우 다릅니다. 아래 표에는 차이점이 요약되어 있습니다.

mysql 데이터 그룹화 및 정렬 및 SELECT 절 순서

표에 나열된 첫 번째 차이점은 매우 중요합니다. GROUP BY로 그룹화된 데이터가 실제로 그룹 순서대로 출력되는 경우가 많습니다. 그러나 항상 그런 것은 아니며 SQL 사양에서 요구되는 것도 아닙니다. 또한 사용자는 항목을 그룹화된 순서와 다른 순서로 정렬하도록 요청할 수 있습니다. 단지 데이터를 특정 방식으로 그룹화한다고 해서(특정 그룹화된 집계 값을 얻기 위해) 동일한 방식으로 출력을 정렬하기 위해 이 필요하다는 의미는 아닙니다. 그 효과가 GROUP BY 절과 동일하더라도 명시적인 ORDER BY 절을 제공해야 합니다. ORDER BY를 잊지 마세요: 일반적으로 GROUP BY 절을 사용할 때는

에 ORDER BY 절도 제공해야 합니다. 이는 데이터가 올바르게 정렬되도록 보장하는 유일한 방법입니다. 절대로 GROUP BY에만 의존하여 데이터를 정렬하지 마세요. GROUP BY 및 ORDER BY 사용법을 설명하려면 예를 살펴보세요. 다음 SELECT 문은 이전 예제와 유사합니다. 총 주문 가격이 50 이상인 주문의 주문 번호와 총 주문 가격을 검색합니다.

입력:

select order_num,sum(quantity*item_price) as ordertotal from orderitems group by order_num having sum(quantity*item_price) >= 50;

출력:

총 주문 가격을 기준으로 출력을 정렬하려면 다음과 같이 ORDER BY 절을 추가해야 합니다. mysql 데이터 그룹화 및 정렬 및 SELECT 절 순서

입력:

select order_num,sum(quantity*item_price) as ordertotal from orderitems group by order_num having sum(quantity*item_price) >= 50 order by ordertotal;

출력:

분석: 이 예에서는 GROUP BY 절을 사용하여 주문 번호(order_num 열)mysql 데이터 그룹화 및 정렬 및 SELECT 절 순서별로 데이터를 그룹화하므로 SUM(*) 함수가 반환할 수 있습니다. 총 주문 가격입니다. HAVING 하위 절

은 총 주문 가격이 50 이상인 주문만 반환되도록 데이터를 필터링합니다. 마지막으로 ORDER BY 절을 사용하여 출력을 정렬합니다. SELECT 절 순서

SELECT 문의 절 순서를 살펴보겠습니다. 표 13-2에는 지금까지 학습한 절을 SELECT 문에서 반드시 사용해야 하는 순서대로 나열하였다.

mysql 데이터 그룹화 및 정렬 및 SELECT 절 순서

[관련 권장 사항]mysql 데이터 그룹화 및 정렬 및 SELECT 절 순서

    mysql 데이터 그룹화: 그룹화 생성
  1. mysql 데이터 그룹화: 필터 그룹화

위 내용은 mysql 데이터 그룹화 및 정렬 및 SELECT 절 순서의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.