데이터베이스 like문 비슷한 데이터 출력
- 프로그래밍/웹사이트
- 2019. 11. 18.
데이터베이스 like문 비슷한 데이터 출력
오늘은 데이터베이스 like문으로 비슷한 데이터를 출력해보겠습니다.
- 사용할 데이터베이스 테이블 소개
- 데이터베이스 like문
사용할 데이터베이스 테이블 소개
오늘 사용할 데이터베이스 테이블은 아래와 같습니다.
(그냥 아무 데이터베이스에 프로젝트 하면서 만든 food테이블)
그냥 비슷한 데이터를 출력하는걸 보려고 데이터 많이 있는 테이블로 골랐습니다.
데이터베이스 like문으로 비슷한 데이터 출력하기.
저번에 select, from, where로 원하는 데이터를 출력하는 방법을 알아봤습니다.
이번에는 like문으로 비슷한 데이터를 출력해보겠습니다.
먼저 명령어는 아래와 같습니다.
(물론 어디에 쓰느냐에 따라서 조금씩 바뀔 수 있습니다.)
select * from 테이블이름 where 칼럼 like='내용';
여기서 좀 더 설명하면 like문을 사용할 때 내용부분에 기호 연산자를 붙여서 사용합니다.
%<--모든 문자.
_<--한 글자.
그래서 위의 데이터에서 비빔밥이라는 데이터가 들어간 문자를 찾는다고 하면
이런식으로 명령문을 구성합니다.
select * from 테이블이름 where 칼럼 like='%내용%';
이런식으로 비빔밥이라는 문자가 글 중간에 있으면 출력할 수 있습니다.
이런식으로 작성하면 맨 앞 두글자가 "아메"인 데이터를 출력하게 됩니다.
뭐가 다른지 잘 모르겠다고요?
그럼 반대로 "%아메"로 검색해보겠습니다.
아까와 바뀐것은 %의 위치밖에 없지만 위의 "아메%"는 아메라는 단어뒤에 어떤것이 와도 상관없다는 의미라고 생각하면 되고 "%아메"는 어떤 단어가 앞에 있어도 되지만 "아메"라는 단어는 맨 뒤에 있어야 한다는 뜻입니다.
즉 "%비빔밥%"이렇게 입력하면 "ㄴㄴ비빔밥ㅇㅇ"이런식으로 있는 데이터도 출력 가능하다는 것입니다.
이번에는 _ <--입니다.
이것도 %와 비슷한데 %는 앞에 어떤 단어 몇글자가 오든지 상관없다는 뜻이면 _는 한글자만 상관 없다는 뜻입니다.
아래와 같은 방법으로 사용가능합니다.