[SQL] LIKE 연산자

·2025년 7월 1일

SQL

목록 보기
28/126

예제 답

select ename
 from emp
 where ename like 'S%';

💡like% 는 서로 짝꿍
%: wild card. 이 자리에 무엇이 와도 상관없다. 철자의 갯수가 몇개가 되든 상관없다는 뜻


문제1. emp21 테이블에서 성씨가 김씨인 학생들의 이름과 나이를 출력하시오

select ename, age
 from emp21
 where ename like '김%';

문제2. emp21 테이블에서 서울에 사는 학생들의 이름과 주소를 출력하시오

select ename, address
 from emp21
 where address like '서울%';

문제3. emp21 테이블에서 서울에서 살지 않는 학생들의 이름과 주소를 출력하시오

select ename, address
 from emp21
 where address not like '서울%';

문제4. 사원 테이블에서 이름의 끝글자가 T 로 끝나는 사원들의 이름을 출력하시오

select ename
 from emp
 where ename like '%T';

문제5. emp21 테이블에서 생일이 20일로 끝나는 학생들의 이름과 생일을 출력하시오

select ename, birth
 from emp21
 where birth like '%20';

문제6. 81년도에 입사한 사원들의 이름과 입사일을 출력하시오

select ename, hiredate
 from emp
 where hiredate like '81%';

문제7. 이름의 두번째 철자가 M 인 사원들의 이름을 출력하시오

select ename
 from emp
 where ename like '_M%';

💡 언더바(_): 이 자리에 무엇이 와도 관계없지만, 자릿수는 한자리여야 됨
💡 like 와 같이 사용할 수 있는 키워드 2개
1. 와일드 카드(%) 2. 언더바(_)

문제8. emp21 테이블에서 naver 메일을 사용하고 있는 학생들의 이름과 이메일을 출력하시오

select ename, email
 from emp21
 where email like '%naver.com';

문제9. emp21 테이블에서 강서구에서 사는 학생들의 이름과 주소를 출력하시오

select ename, address
 from emp21
 where address like '%강서구%';

💡 특정 문자를 포함하는 쿼리문을 수행하려면, 와일드 카드(%)를 양쪽에 기술하면 됨

문제10. 사원 테이블에서 이름의 세번째 철자가 L 인 사원들의 이름을 출력하시오

select ename
 from emp
 where ename like '__L%';	-- 언더바 2번

문제11. 아래의 데이터를 사원 테이블에 입력하시오

insert into emp(empno, ename, sal) 
values(9384, 'A%B', 4500);  

commit; 

문제12. 이름의 두번째 철자가 % 인 사원들의 이름을 출력하시오

select ename
 from emp
 where ename like '_m%%' escape 'm';

💡 m 바로 다음에 나오는 % --> 특수문자 %
그 다음에 나오는 % --> 와일드 카드
escape 꼭 써줘야 됨

문제13. 아래의 데이터를 입력하시오 !

insert into emp(empno, ename, sal)
values(2934,'A%%B', 3400); 
  
commit;

문제14. 이름의 두번째 철자도 % 로 세번째 철자도 % 인 사원의 이름을 출력

select ename
 from emp
 where ename like '_m%m%%' escape 'm';

0개의 댓글