SELECT DISTINCT page_location
FROM ga
WHERE INSTR(page_location, '_') = 0
ORDER BY 1 asc
LIKE
특정 문자가 포함되어 있는지 조회
• _ → 임의의 한 글자를 의미
• % → 임의의 여러 글자를 의미
LIKE = 'a%'
a로 시작하는 데이터
LIKE = '%a'
a로 끝나는 데이터
LIKE = '%a%'
a가 포함되는 데이터
LIKE = '_a'
a 앞에 임의의 한 글자가 포함된 데이터
NOT LIKE
특정 문자를 포함하지 않는 데이터 조회
INSTR (문자열, 부분_문자열)
문자열 내에서 특정 부분 문자열이 처음 나타나는 위치를 찾을 때 사용하는 함수
부분 문자열이 존재하지 않으면 0을 반환
SELECT * FROM 테이블명 WHERE INSTR(열_이름, '찾을_문자열') > 0;
‘찾을문자열’이 ‘열이름’에 포함된 모든 행을 반환
SELECT * FROM 테이블명 WHERE INSTR(열_이름, '찾을_문자열') = 0;
‘찾을문자열’이 ‘열이름’에 포함되지 않은 행들을 반환
특정 문자(예: _, %, \ 등)를 특수한 의미가 아닌 일반 문자로 해석하도록 하는 방법
SQLite에서는 _ (임의의 한 글자)와 % (임의의 여러 글자) 같은 문자가 LIKE 연산자에서 와일드카드(특수 기능을 가진 문자) 로 동작
→ 문자로 인식되도록 설정해야 한다.
WHERE column_name LIKE '%\_%' ESCAPE '\';
✔ ESCAPE '\'는 백슬래시( \ )를 Escape 문자로 지정한다는 의미
✔ 따라서 _는 특수 기호 (임의의 한글자)가 아니라 일반 문자 로 해석됨
SELECT DISTINCT page_location
FROM ga
WHERE page_location NOT LIKE '%\_%' ESCAPE '\'
ORDER BY 1 asc