1517. Find Users With Valid E-Mails : leetcode

오유찬·2026년 1월 15일

SQL

목록 보기
52/71
SELECT  user_id, name, mail
FROM    users
WHERE   mail REGEXP '^[a-zA-Z][a-zA-Z0-9._-]*@leetcode[.]com'

이렇게 하면 mysql에서는 c와 C가 같은 글자이기 때문에 COM으로 input이 들어왔을 때 그대로 출력한다.

WHERE   mail REGEXP '(?-i)^[a-zA-Z][a-zA-Z0-9._-]*@leetcode[.]com$'

(?-i)로 대소문자 무시 옵션을 끌 수 있다.

아니면 BINARY 옵션을 사용하면 되는데

WHERE   mail REGEXP '^[a-zA-Z][a-zA-Z0-9._-]*@leetcode[.]com$' 
		AND mail LIKE BINARY '%@leetcode.com';

REGEXP에다가 BINARY를 바로 붙이면 DB 설정 상 mail은 utf-8 규칙을 따르는데 BINARY를 사용하려 한다는 에러가 뜬다. 위처럼 (?-i) 옵션을 사용해도 되고, 아니면 utf-8 규칙을 잠깐 BINARY 형태로 바꾸는 방법도 존재한다.

WHERE (mail as BINARY) REGEXP '^[a-zA-Z][a-zA-Z0-9._-]*@leetcode[.]com$'
profile
열심히 하면 재밌다

0개의 댓글