와일드카드 문자로 사용된 문자 검색
MS SQL SERVER
때때로 와일드카드 문자로 사용된 문자가 들어 있는 문자열을 검색해야 하는 경우가 있습니다. 예를 들어 titles
테이블에서 제목에 "10%"라는 문자열이 들어 있는 모든 출판물을 찾으려는 경우 "%"가 검색하려는 문자열의 일부이기 때문에 이 문자는 와일드카드 문자가 아니라 리터럴 문자열이라고 지정해야 합니다.
와일드카드 문자로 해석될 수 있는 문자를 검색하려면 제어 문자를 지정하면 됩니다. 와일드카드가 아닌 문자 자체로 간주할 "%"나 "_" 바로 앞에 제어 문자를 붙입니다. 제어 문자를 지정하려면 LIKE 검색 기준 바로 다음에 ESCAPE 절을 포함합니다. 표 형태 창이나 SQL 창의 기준 열에서 이 작업을 할 수 있습니다.
"#" 문자를 제어 문자로 정의하면 "%" 문자 앞에 "#"를 포함시킵니다. 표 형태 창에 이를 입력할 수 있습니다.
LIKE '%10#%%' ESCAPE '#'
SQL 문의 WHERE 절은 아래와 같습니다.
WHERE title LIKE '%10#%%' ESCAPE '#'
메모 SQL 창에서만 제어 문자를 정의할 수 있습니다.
와일드카드 문자
와일드카드 문자를 사용하면 텍스트 문자열로 간주되는 모든 열을 검색할 수 있습니다. 데이터 형식 문자가 들어 있는 열은 항상 텍스트 문자열로 간주됩니다. 날짜/시간 데이터가 들어 있는 문자들은 일부 데이터베이스에 대하여 텍스트 문자열로 간주될 수 있습니다.
패턴을 검색하려면 LIKE 연산자를 사용하여 검색 문자열의 일부 문자를 와일드카드 문자로 대체하십시오. 아래와 같은 와일드카드 문자를 사용할 수 있습니다.
와일드카드 문자 | 의미 |
%(백분율 기호) | 해당 위치에 있는 0개 이상의 문자 |
_(밑줄) | 해당 위치에 있는 문자 하나 |
예를 들어 "Mac"로 시작하는 모든 이름을 검색하려면 검색 조건 LIKE 'Mac%'
을 지정할 수 있습니다.
"Jan", "Jen", "Jon" 같은 이름을 찾으려면 검색 조건을 LIKE 'J_n'
으로 지정하면 됩니다.
'IT-개발,DB' 카테고리의 다른 글
[ASP.NET] 오른쪽 마우스 금지 (0) | 2010.04.06 |
---|---|
[ms-sql-server] 날짜관련 함수모음 (0) | 2010.04.06 |
[데이터베이스] MS SQL2000 에서 2005 로 데이터 내보내기(DTC) 어떻게 해야하나요 (0) | 2010.04.06 |
[개발/asp.net] Get방식과 POST 방식의 차이 (0) | 2010.04.06 |
[IT/개발] MS SQL 서버 관련 유용한 SQL 명령어 팁 (0) | 2010.03.23 |
댓글