TIL

MySql과 like

브라더 코드 2021. 9. 15. 10:31

특정 문자(열)이 포함된 데이터를 얻고 싶을땐 like를 쓰면 된다.

 

'강'으로 시작하는 데이터 검색

select * from Road_Table where road_name like '강%'

'강'으로 끝나는 데이터 검색

select * from Road_Table where road_name like '%강'

'강'이 포함된 데이터 검색

select * from Road_Table where road_name like '%강%'

 

그런데 '% 강 %'으로 한다면 앞뒤 공백까지 포함해서 검색한다.

그래서 클라이언트측에서든 DB에서든 공백제거를 해주어야 한다.

 

또한 like를 반대로 쓰고 싶은 경우도 있다. 즉 특정 문자(열)이 포함되지 않은 데이터를 찾는 것이다.

그럴땐 like 앞에 not을 붙여 not like로 쓰면 된다.

select * from Road_Table where road_name not like '%강%'