> 데이터 베이스 > MySQL 튜토리얼 > SQL의 ORDER BY 절에서 대소문자를 구분하지 않고 정렬하려면 어떻게 해야 합니까?

SQL의 ORDER BY 절에서 대소문자를 구분하지 않고 정렬하려면 어떻게 해야 합니까?

Mary-Kate Olsen
풀어 주다: 2024-12-30 14:22:11
원래의
341명이 탐색했습니다.

How Can I Perform Case-Insensitive Sorting in SQL's ORDER BY Clause?

Order By 문을 사용하여 SQL 결과 대소문자를 구분하지 않고 정렬

SQL의 Order By 문을 사용하여 데이터를 정렬할 때 대소문자 구분이 원하는 결과를 방해할 수 있습니다. 주문. 예를 들어, SQLite 테이블에 "A", "a", "B" 및 "T"와 같은 값이 포함된 경우 기본 정렬 동작은 다음과 같습니다.

A
B
C
T
a
b
c
g
로그인 후 복사

대소문자를 구분하지 않으려면 정렬 시 COLLATE 키워드는 Order By 문과 함께 사용할 수 있습니다. COLLATE NOCASE를 지정하면 데이터베이스는 값을 비교할 때 대소문자 차이를 무시합니다.

SELECT * FROM NOTES ORDER BY title COLLATE NOCASE
로그인 후 복사

이렇게 하면 대문자와 소문자 모두 동일한 가중치를 갖는 정렬된 결과 집합이 반환됩니다.

A
a
b
B
C
c
g
T
로그인 후 복사

추가로 ASC 또는 DESC 키워드를 COLLATE 뒤에 추가하여 정렬 순서(오름차순 또는 내림차순)를 제어하는 ​​데 사용할 수 있습니다. NOCASE:

ORDER BY TITLE COLLATE NOCASE ASC -- Sort ascending (A-Z, a-z)
로그인 후 복사
ORDER BY TITLE COLLATE NOCASE DESC -- Sort descending (Z-A, z-a)
로그인 후 복사

위 내용은 SQL의 ORDER BY 절에서 대소문자를 구분하지 않고 정렬하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿