MSSQL 특수문자 LIKE 조회하기 Escape 사용하기 _%#&- 등 조회

2017. 11. 8. 17:44IT/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 유사 부분에선 [] 방법을 쓰면 됩니다.

이해하셨나요??

 

반응형