예제 테이블)
with school as (
select '1' as 학년, '쉬시' as 이름, 70 as 점수 from dual union all
select '3','용띠' ,54 union all
select '3','이웃집청소' ,72 union all
select '1','붜워' ,10 union all
select '2','윤띵' ,50 union all
select '3','츄밍뜨' ,60 union all
select '2','BackSengWon' , 15 union all
select '2','동탄' ,90 union all
select '3','듀탄퐁', 0
)
select * from school;
문제) NOT을 이용하여 학년이 1학년이 아닌 학생들의 레코드를 조회 하세요
with school as (
select '1' as 학년, '쉬시' as 이름, 70 as 점수 from dual union all
select '3','용띠' ,54 union all
select '3','이웃집청소' ,72 union all
select '1','붜워' ,10 union all
select '2','윤띵' ,50 union all
select '3','츄밍뜨' ,60 union all
select '2','BackSengWon' , 15 union all
select '2','동탄' ,90 union all
select '3','듀탄퐁', 0
)
SELECT *
FROM SCHOOL
WHERE NOT 학년 IN ('1');
NOT 컬럼명 IN (PARAM1,PARAM2...)
IN 뒤에 파라미터를 여러개 넣을수 도 있다. 즉 1학년 뿐만 아니라 2학년도 보여주기 싫다면
NOT 학년 IN ('1','2'); 이렇게 작성할 수 있다.
제외해야 할 값이 많을 때 != 를 여러번 쓰는 것 보단 쿼리가 깔끔하게 나올 수 있다.
출처 : [DATABASE/SQL] WHERE절에 NOT 사용하기 , 특정 값을 제외한 조회 (tistory.com)
'IT > SQLD' 카테고리의 다른 글
[MSSQL] 조인 방법 쉽게 정리 (INNER JOIN, OUTER JOIN) (0) | 2023.05.22 |
---|---|
[MSSQL] GROUP BY COUNT 그룹으로 묶어 집계하기 (0) | 2023.05.22 |
[MSSQL] BETWEEN 날짜 범위 검색 방법 (0.99999) (0) | 2023.05.22 |
[MSSQL] 저장 프로시저(Stored Procedure) 내용 검색하기 (0) | 2023.05.22 |
[Oracle] 사용자 비밀번호 변경 방법 (Alter User) (0) | 2023.05.15 |