SQL 기초_3

YJ·2023년 4월 12일
0

▷ 오늘 학습 계획: SQL 강의(기초5~6)

📖 07_Logical Operators

논리 연산자

  • AND: 조건을 모두 만족하는 경우 TRUE
  • OR: 하나의 조건이라도 만족하는 경우 TRUE
  • NOT: 조건을 만족하지 않는 경우 TRUE
  • BETWEEN: 조건값이 범위 사이에 있으면 TRUE
  • IN: 조건값이 목록에 있으면 TRUE
  • LIKE: 조건값이 패턴에 맞으면 TRUE

1) AND

SELECT column1, column2
FROM tablename
WHERE condition1 AND condition2;
# celeb 테이블에서 성별이 남자이고 소속사가 YG엔터테이먼트인 데이터를
# 소속사 순으로 정렬하여 조회
SELECT * FROM celeb
WHERE sex='M' AND agency='YG엔터테이먼트'
ORDER BY agency;

# celeb 테이블에서 나이가 30세 이상이고 성별이 남자인 데이터를
# 나이순으로 정렬하여 조회
SELECT * FROM celeb
WHERE age>=30 AND sex='M'
ORDER BY age;

2) OR

SELECT column1, column2
FROM tablename
WHERE condition1 OR condition2;
# celeb 테이블에서 소속사가 YG 엔터테이먼트 이거나 안테나인 데이터를
# 소속사 순으로 정렬하여 조회
SELECT * FROM celeb
WHERE agency='YG엔터테이먼트' OR agency="안테나"
ORDER BY agency;

# celeb 테이블에서 남자이면서 YG엔터테이먼트 소속이거나,
# 나이가 30세 보다 작은 데이터를 나이, 소속사 순으로 정렬하여 검색
SELECT * FROM celeb
WHERE (sex='M' AND agency='YG엔터테이먼트') OR age<30
ORDER BY age, agency;

# celeb 테이블에서 아이디가 홀수면서 성별이 남자거나,
# 아이디가 짝수면서 소속사가 YG엔터테이먼트인 데이터를 나이순으로 정렬하여 검색
SELECT * FROM celeb
WHERE ((id%2)=1 AND sex='M') OR ((id%2)=0 AND agency='YG엔터테이먼트')
ORDER BY age;

2) NOT

SELECT column1, column2
FROM tablename
WHERE NOT condition;
# celeb 테이블에서 소속사가 YG엔터테이먼트가 아니고 나이가 40세 이하인 데이터를
# 이름순으로 정렬하여 조회
SELECT * FROM celeb
WHERE NOT agency='YG엔터테이먼트' AND age<=40
ORDER BY name;

# celeb 테이블에서 성별이 남자가 아니거나 나이가 30세 이상인 데이터를
#나이의 역순으로 정렬하여 조회
SELECT * FROM celeb
WHERE NOT sex='M' OR age>=30
ORDER BY age DESC;

# celeb 테이블에서 직업이 가수가 아니면서 성별이 여자이거나 
# 나이가 40보다 작지 않으면서 아이디가 홀수인 데이터를 조회
SELECT * FROM celeb
WHERE (NOT job_title='가수' AND sex='F') OR (NOT age<40 AND (id%2)=1); 

▷ 내일 학습 계획: SQL 강의(기초7~9)

[이 글은 제로베이스 데이터 취업 스쿨의 강의 자료 일부를 발췌하여 작성되었습니다.]

0개의 댓글