2017. 11. 8. 17:44ㆍIT/MS-SQL
MSSQL 을 사용하다 보면 특수문자만 골라서 LIKE 검색을 하고 싶은데
SELECT * FROM [TABLE1] WHERE 1=1 AND [COLUMN1] LIKE '%_%'
이렇게 조회하면 그냥 모든것이 전부 조회가 된다.
이럴때 해결 방법이다. 참 간단한 문제인데 의외로 모르는 사람들이 많다.
SQL 특수문자 자체를 검색하기 시작해보도록 합시다!!
아래로 ↓↓↓↓↓↓↓↓↓↓↓↓↓↓
MSSQL 특수문자 LIKE 조회하기 Escape 사용하기 _%#&- 등 조회
-- 우선 테이블을 생성하자. DATA를 확인해야 이해가 가니까 그냥 만들어 줍니다.
create table TABLE_1 (mNo int identity(1,1),COLUMN1 varchar(100) )
-- 특수 문자 자체를 검색하기 및 사용하기
-- 간단하게 말해서!! [] 안에 원하는 특수문자를 넣으면 됩니다.
-- 다른 방법으로는 escape '/' 뒤에 특수문자를 넣으면 됩니다.
insert into TABLE_1 values ('ABC_DEFG_HIJK')
insert into TABLE_1 values ('ABC1DEFG_HIJK')
insert into TABLE_1 values ('ABC_DEFG2HIJK')
insert into TABLE_1 values ('ABC_DEFG%HIJK')
insert into TABLE_1 values ('ABC_DEFG\HIJK')
insert into TABLE_1 values ('ABC_DEFG/HIJK')
select * from TABLE_1 where COLUMN1 like '%ABC[_]DEFG[%]HIJK%'
select * from TABLE_1 where COLUMN1 like '%ABC[_]DEFG[_]HIJK%'
select * from TABLE_1 where COLUMN1 like '%ABC/_DEFG/_HIJK%' escape '/'
프로파일러 Textdata 유사 부분에선 [] 방법을 쓰면 됩니다.
이해하셨나요??
'IT > MS-SQL ' 카테고리의 다른 글
행렬 변환 함수 PIVOT, UNPIVOT [MSSQL 가로 세로 변환, 행열변환] (0) | 2018.06.18 |
---|---|
MSSQL DATABASE 백업 DB 만들기 / 테스트 DB 만들기 (0) | 2017.11.09 |
[MSSQL] 예외처리, exists 사용법 (0) | 2017.05.04 |
[MSSQL] DATEADD 사용법 / 날짜 및 시간 더하기 / 날짜 및 시간 빼기 (0) | 2017.03.31 |
SQL Server Profiler (프로파일러) 사용법 (0) | 2017.03.14 |