AI 보이는 추론 실험실 · 패턴과 리터럴

AI가 SQL LIKE의 밑줄을 글자 그대로 찾아도 될까?

파일 이름과 LIKE 패턴을 바꾸어, 밑줄 한 개가 실제 밑줄이 아니라 임의의 한 문자를 뜻하는 경우를 확인합니다.

탐구게시 2026-10-15읽기·실험 약 10분확인 문제 2개규칙 기반 실행한국논리학협회 자체 제작제작·검수 LTCT 편집부

도서관 자료실에서 성인 여성 데이터 사서가 빛상자 위 파일 이름 타일의 밑줄 자리를 가리키며 여러 기록 카드를 대조하고 작은 갈색 안경 올빼미가 카드 서랍에 있는 장면
주제 이해를 돕기 위한 AI 생성 이미지 · LTCT 자체 제작
오늘의 질문

LIKE 'file_1'은 밑줄이 든 file_1만 찾을까요?

LIKE 패턴 file_1의 밑줄 자리에 밑줄뿐 아니라 A나 7 같은 임의의 한 문자가 들어가 여러 파일 이름과 일치하는 관계도
LIKE 패턴 file_1의 밑줄 자리에 밑줄뿐 아니라 A나 7 같은 임의의 한 문자가 들어가 여러 파일 이름과 일치하는 관계도 · 한국논리학협회 자체 제작
그림 크게 보기 ↗
01

LIKE 패턴의 밑줄은 한 자리 와일드카드입니다

도서관 파일 이름에서 file_1만 찾으려고 SQL LIKE(에스큐엘 라이크, 패턴 비교 연산) 조건을 만들었다고 합시다. PostgreSQL의 LIKE 패턴에서 밑줄은 밑줄 글자 자체가 아니라 임의의 한 문자와 맞는 와일드카드입니다. 그래서 file_1뿐 아니라 fileA1과 file71도 일치합니다.

퍼센트 기호는 0개 이상의 문자와 맞습니다. LIKE 비교는 기본적으로 문자열 전체를 대상으로 하므로, 중간 어디에나 포함된 값을 찾으려면 패턴 양쪽에 퍼센트 기호를 놓는 별도 선택이 필요합니다.

참고 · PostgreSQL Global Development Group — LIKE 패턴의 밑줄과 이스케이프 ↗

02

실제 밑줄을 찾으려면 이스케이프가 필요합니다

PostgreSQL 기본 설정에서는 역슬래시로 밑줄의 특별한 뜻을 끌 수 있습니다. 패턴 file\_1은 file_1과는 맞지만 fileA1과는 맞지 않습니다. 활동에서 이스케이프 사용 여부를 바꾸고 같은 패턴의 결과가 어떻게 달라지는지 확인하세요.

응용 프로그램 문자열 안에 SQL을 넣을 때는 프로그래밍 언어와 SQL이 각각 역슬래시를 처리할 수 있습니다. 화면에 보이는 역슬래시 개수만 짐작하지 말고, 매개변수 전달 뒤 데이터베이스가 받은 실제 패턴을 기록해야 합니다.

03

사용자 입력을 패턴으로 쓸지 값으로 쓸지 먼저 정합니다

검색창에 사용자가 입력한 밑줄이나 퍼센트 기호를 그대로 LIKE 패턴에 붙이면, 의도보다 훨씬 많은 행이 선택될 수 있습니다. 사용자가 와일드카드를 직접 쓰게 할 것인지, 모든 기호를 글자 그대로 찾게 할 것인지 제품 규칙을 먼저 정해야 합니다.

이 활동은 문자열 일치만 보여 줍니다. SQL 삽입을 막는 매개변수화, 대소문자 비교, 언어별 정렬 규칙, 인덱스 성능은 별도 문제입니다. AI는 패턴 의미와 보안 처리를 한 문장으로 뭉뚱그리지 말아야 합니다.

직접 확인하기 · 규칙 기반 실행

파일 이름·패턴·이스케이프를 바꾸어 일치 판정하기

PostgreSQL LIKE의 밑줄·퍼센트·역슬래시 이스케이프 규칙을 재현합니다. 데이터베이스별 이스케이프 기본값과 정렬 규칙은 다를 수 있습니다.

파일 이름fileA1
LIKE 패턴file_1
밑줄 의미임의의 한 문자
판정일치
파일 이름이 선택한 LIKE 패턴과 일치합니다.

밑줄은 기본적으로 한 문자 와일드카드입니다. 실제 밑줄을 찾으려면 데이터베이스의 이스케이프 규칙을 확인하세요.

관계를 읽고, 다른 상황에 적용하기

두 문제로 생각 확인

1PostgreSQL LIKE 패턴에서 밑줄 한 개는 무엇과 맞는가?
2기본 이스케이프 규칙에서 실제 밑줄이 든 file_1만 찾는 패턴은?

두 문제의 답을 모두 선택하면 해설을 볼 수 있습니다.

나의 설명으로 마무리

오늘 발견한 관계

0 / 4,000자

메모는 현재 기기의 브라우저에만 보관됩니다. 계정이나 다른 기기에는 동기화되지 않습니다.

출처와 제작 안내

원문을 참고해 설명·도표·문항·실험을 새로 작성했습니다. 별도 표시가 없는 사례와 수치는 학습을 위한 가상 예시입니다. 원문 번역이나 실제 모델의 성능 평가 자료가 아닙니다.

  1. LIKE 패턴의 밑줄과 이스케이프 ↗PostgreSQL Global Development GroupPostgreSQL 18 Documentation · 9.7 Pattern Matching

    LIKE 패턴의 밑줄은 임의의 한 문자, 퍼센트 기호는 0개 이상의 문자와 맞으며, 리터럴 기호에는 이스케이프가 필요하다는 설명을 확인했습니다.