주문 방법: MySQL: EXAMPLE을 사용한 DESC 및 ASC 쿼리

정렬 결과

SELECT 명령을 사용하면 레코드가 데이터베이스에 추가된 것과 동일한 순서로 결과가 반환되었습니다. 이것이 기본 정렬 순서입니다. 이번 섹션에서는 쿼리 결과를 정렬하는 방법을 살펴보겠습니다. 정렬은 단순히 쿼리 결과를 지정된 방식으로 다시 정렬하는 것입니다. 단일 열 또는 둘 이상의 열에 대해 정렬을 수행할 수 있습니다. 숫자, 문자열, 날짜 데이터 유형에 대해 수행할 수 있습니다.

ORDER BY 란 무엇입니까? MySQL?

MySQL 주문 SELECT 쿼리와 함께 사용되어 데이터를 순서대로 정렬합니다. 그만큼 MySQL ORDER BY 절은 쿼리 결과 집합을 오름차순 또는 내림차순으로 정렬하는 데 사용됩니다.

SELECT statement... [WHERE condition | GROUP BY `field_name(s)` HAVING condition] ORDER BY `field_name(s)` [ASC | DESC];

여기를 클릭하십시오.

  • "SELECT 문... " 일반 선택 쿼리입니다
  • " | " 대안을 나타냅니다
  • “[어디 조건 | GROUP BY `field_name(s)` HAVING 조건” 쿼리 결과 집합을 필터링하는 데 사용되는 선택적 조건입니다.
  • "주문" 쿼리 결과 집합 정렬을 수행합니다.
  • “[ASC | 설명]” 결과 집합을 오름차순 또는 내림차순으로 정렬하는 데 사용되는 키워드입니다. 메모 ASC 기본값으로 사용됩니다.
  • DESC 및 ASC 키워드는 무엇입니까?

    DESC 및 ASC 키워드ASC는 오름차순의 약어입니다. DESC 및 ASC 키워드MySQL DESC는 내림차순의 약어입니다.
    쿼리 결과를 위에서 아래로 정렬하는 데 사용됩니다. 쿼리 결과를 아래에서 위로 정렬하는 데 사용됩니다.
    날짜 데이터 유형을 작업할 때 가장 빠른 날짜가 목록 상단에 표시됩니다. . 날짜 유형 작업 시 최신 날짜가 목록 상단에 표시됩니다.
    숫자 데이터 유형으로 작업할 때 가장 낮은 값이 목록 상단에 표시됩니다. 숫자 데이터 유형으로 작업할 때 가장 높은 값이 쿼리 결과 세트 상단에 표시됩니다.
    문자열 데이터 유형으로 작업할 때 쿼리 결과 집합은 문자 A로 시작하여 문자 Z까지 정렬됩니다. 문자열 데이터 유형으로 작업할 때 쿼리 결과 집합은 문자 Z로 시작하는 항목부터 문자 A까지 정렬됩니다.

    SQL DESC 및 ASC 키워드는 모두 SELECT 문과 함께 사용되며 MySQL ORDER BY 절.


    DESC 및 ASC 구문

    SQL DESC 정렬 키워드의 기본 구문은 다음과 같습니다.

    SELECT {fieldName(s) | *} FROM tableName(s) [WHERE condition] ORDER BY fieldname(s) ASC /DESC [LIMIT N]

    여기를 클릭하십시오.

    • SELECT {필드 이름 | *} 테이블 이름에서 결과 세트를 가져올 필드와 테이블이 포함된 명령문입니다.
    • [WHERE 조건] 선택 사항이지만 주어진 조건에 따라 데이터를 필터링하는 데 사용할 수 있습니다.
    • 주문 fieldname(s)은 필수이며 정렬이 수행될 필드입니다. 그만큼 MySQL DESC 키워드는 내림차순으로 정렬되도록 지정합니다.
    • [한계] 선택 사항이지만 쿼리 결과 집합에서 반환되는 결과 수를 제한하는 데 사용할 수 있습니다.

    예 :

    이제 실제적인 예를 살펴보겠습니다.

    SELECT * FROM members;

    위 스크립트를 실행하면 MySQL myflixdb에 대해 Workbench를 사용한 결과는 아래와 같습니다.

membership_number full_names gender date_of_birth physical_address postal_address contct_number email
1 Janet Jones Female 21-07-1980 First Street Plot No 4 Private Bag 0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Female 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Robert Phil Male 12-07-1989 3rd Street 34 NULL 12345 rm@tstreet.com
4 Gloria Williams Female 14-02-1984 2nd Street 23 NULL NULL NULL
5 Leonard Hofstadter Male NULL Woodcrest NULL 845738767 NULL
6 Sheldon Cooper Male NULL Woodcrest NULL 976736763 NULL
7 Rajesh Koothrappali Male NULL Woodcrest NULL 938867763 NULL
8 Leslie Winkle Male 14-02-1984 Woodcrest NULL 987636553 NULL
9 Howard Wolowitz Male 24-08-1981 SouthPark P.O. Box 4563 987786553


마케팅 부서가 멤버의 세부 정보를 생년월일 순으로 정렬하기를 원한다고 가정해 보겠습니다. 이렇게 하면 적시에 생일 인사를 보낼 수 있습니다. 아래와 같은 쿼리를 실행하여 해당 목록을 얻을 수 있습니다.

SELECT * FROM members ORDER BY date_of_birth DESC;

위 스크립트를 실행하면 MySQL myflixdb에 대해 Workbench를 사용한 결과는 아래와 같습니다.

DESC 및 ASC 예

동일한 쿼리를 오름차순으로

SELECT * FROM 회원 ORDER BY date_of_birth ASC

DESC 및 ASC 예

참고: NULL 값은 값이 없음(XNUMX 또는 빈 문자열이 아님)을 의미합니다. 정렬된 방식을 관찰하세요.

더 많은 예제

모든 회원 레코드를 나열하는 다음 SQL 정렬 스크립트를 살펴보겠습니다.

SELECT * FROM `members`;

위 스크립트를 실행하면 아래에 표시된 결과가 나타납니다.

membership_number full_names gender date_of_birth physical_address postal_address contct_number email
1 Janet Jones Female 21-07-1980 First Street Plot No 4 Private Bag 0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Female 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Robert Phil Male 12-07-1989 3rd Street 34 NULL 12345 rm@tstreet.com
4 Gloria Williams Female 14-02-1984 2nd Street 23 NULL NULL NULL
5 Leonard Hofstadter Male NULL Woodcrest NULL 845738767 NULL
6 Sheldon Cooper Male NULL Woodcrest NULL 976736763 NULL
7 Rajesh Koothrappali Male NULL Woodcrest NULL 938867763 NULL
8 Leslie Winkle Male 14-02-1984 Woodcrest NULL 987636553 NULL
9 Howard Wolowitz Male 24-08-1981 SouthPark P.O. Box 4563 987786553 NULL


성별 필드를 사용하여 쿼리 결과 집합을 정렬하는 목록을 얻고 싶다고 가정하면 아래에 표시된 스크립트를 사용합니다.

SELECT * FROM `members` ORDER BY `gender`;
membership_number full_names gender date_of_birth physical_address postal_address contct_number email
1 Janet Jones Female 21-07-1980 First Street Plot No 4 Private Bag 0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Female 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
4 Gloria Williams Female 14-02-1984 2nd Street 23 NULL NULL NULL
3 Robert Phil Male 12-07-1989 3rd Street 34 NULL 12345 rm@tstreet.com
5 Leonard Hofstadter Male NULL Woodcrest NULL 845738767 NULL
6 Sheldon Cooper Male NULL Woodcrest NULL 976736763 NULL
7 Rajesh Koothrappali Male NULL Woodcrest NULL 938867763 NULL
8 Leslie Winkle Male 14-02-1984 Woodcrest NULL 987636553 NULL
9 Howard Wolowitz Male 24-08-1981 SouthPark P.O. Box 4563 987786553 NULL

ORDER BY DESC 절을 ASC 또는 CODE를 지정하지 않고 사용했기 때문에 "여성" 회원이 먼저 표시되고 그 다음에 "남성" 회원이 표시됩니다. MySQL DESC 키워드는 기본적으로 MySQL 쿼리 결과 집합을 오름차순으로 정렬했습니다.

이제 다음을 수행하는 예를 살펴보겠습니다. 두 개의 열을 사용하여 정렬; 첫 번째는 분류 in 오름차순 기본적으로 두 번째 열은 분류 in 내림차순.

SELECT * FROM `members` ORDER BY `gender`,`date_of_birth` DESC;

위 스크립트를 실행하면 MySQL myflixdb에 대한 Workbench의 결과는 다음과 같습니다.

DESC 및 ASC 예

성별 열은 기본적으로 오름차순으로 정렬되었으며, 생년월일 열은 명시적으로 내림차순으로 정렬되었습니다.

DESC와 ASC를 사용하는 이유는 무엇입니까?

프론트 데스크의 문의에 대한 답변을 돕기 위해 비디오 라이브러리 회원의 지불 내역을 인쇄한다고 가정해 보겠습니다. 최근 지불부터 시작하여 이전 지불까지 내림차순으로 지불을 인쇄하는 것이 더 논리적이지 않습니까?

SQL의 DESC는 이러한 상황에서 유용한 키워드입니다. 결제 날짜를 기준으로 내림차순으로 목록을 정렬하는 쿼리를 작성할 수 있습니다.

마케팅 부서에서 회원들이 영화를 대여할 때 도서관에서 어떤 영화를 볼 수 있는지 결정하는 데 사용할 수 있는 카테고리별 영화 목록을 얻고자 한다고 가정해 보겠습니다. 영화 카테고리 이름과 제목을 오름차순으로 정렬하는 것이 더 논리적이지 않을까요? 회원들은 목록에서 정보를 빠르게 조회할 수 있나요?

ASC 키워드는 이러한 상황에서 유용합니다. 카테고리 이름과 영화 제목을 기준으로 오름차순으로 정렬된 영화 목록을 얻을 수 있습니다.

요약

  • 쿼리 결과 정렬은 쿼리 결과 집합에서 반환된 행을 오름차순 또는 내림차순으로 다시 정렬하는 것입니다.
  • SQL의 DESC 키워드는 쿼리 결과 집합을 내림차순으로 정렬하는 데 사용됩니다.
  • ASC 키워드는 쿼리 결과 집합을 오름차순으로 정렬하는 데 사용됩니다.
  • DESC와 ASC는 모두 ORDER BY 키워드와 함께 작동합니다. 다음과 같은 다른 키워드와 함께 사용할 수도 있습니다. WHERE 절 그리고 LIMIT
  • 명시적으로 지정된 것이 없는 경우 ORDER BY의 기본값은 ASC입니다.