SQL Server WHERE 절에서 대소문자 구분 검색 달성
WHERE 절 내의 문자열 비교에 대한 SQL Server의 기본 동작은 대/소문자를 구분하지 않습니다. 이는 정확하고 대소문자를 구분하는 검색이 필요할 때 어려운 일입니다.
대소문자 구분 비교를 위한 데이터 정렬 활용
해결책은 COLLATE
키워드를 활용하는 것입니다. 이 키워드를 사용하면 비교에 포함된 열의 데이터 정렬을 지정하여 대소문자 구분을 포함한 문자열 일치 규칙을 정의할 수 있습니다.
예:
<code class="language-sql">SELECT 1 FROM dbo.Customers WHERE CustID COLLATE SQL_Latin1_General_CP1_CS_AS = @CustID AND OrderID COLLATE SQL_Latin1_General_CP1_CS_AS = @OrderID</code>
여기에서 COLLATE SQL_Latin1_General_CP1_CS_AS
은 CustID
및 OrderID
열 모두에서 대소문자 구분 비교를 시행합니다.
영구 대소문자 구분을 위한 열 속성 수정
일관적인 대소문자 구분 동작을 위해 테이블 정의 내에서 직접 열 속성을 조정할 수 있습니다. 기본적으로 열은 대소문자를 구분하지 않는 속성으로 생성됩니다.
COLLATE와 LIKE 연산자 통합
COLLATE
키워드는 대소문자 구분 패턴 일치를 위해 LIKE
연산자와 원활하게 통합됩니다.
<code class="language-sql">SELECT * FROM tbl_Partners WHERE PartnerName COLLATE SQL_Latin1_General_CP1_CS_AS LIKE 'MyEx%' COLLATE SQL_Latin1_General_CP1_CS_AS</code>
이 쿼리는 'MyEx'로 시작하는 PartnerName
값에 대해 대소문자를 구분하여 검색합니다.
위 내용은 SQL Server WHERE 절에서 대소문자 구분 검색을 수행하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!