문제 (6) - 집합연산자
집합연산자 실습문제를 풀어보자!
Chapter 5 - 집합 연산자
문제1.
집합 A = {L M N O P}로 설정하고 집합 B = {P Q R S T}로 설정하면 다음 연산은 각각 어떤 집합을 생성할까요?
- A union B
- A union all B
- A intersect B
- A except B
union
과 union all
의 차이는 중복제거다.
- A union B 는 중복제거를 하므로,
- A union B = {L M N O P Q R S T}
- A union all B 는 중복제거를 하지 않으므로, 교집합인 P 가 2번 나타날 것이다.
- A union all B = {L M N O P P Q R S T}
- intersect는 교집합만을 추출하므로,
- A intersect B = {P}
- except는 A에서 B와, 교집합을 빼는 것이므로,
- A except B = {L M N O}
문제2.
성이 L로 시작하는 모든 배우와 고객의 이름과 성을 찾는 복합 쿼리를 작성하라.
- (성이 L로 시작하는 모든 배우 + 성이 L로 시작하는 모든 고객)의 이름과 성이 나타나도록 쿼리를 짜야 한다.
- 중복제거를 한다고 가정해보겠다.
- actor 테이블과 customer 테이블을 합치되, 이때 조건을 성이 L로 시작하게 설정한다.
SELECT
c.first_name AS fname
, c.last_name AS lname
FROM customer c
WHERE c.last_name LIKE 'L%'
UNION
SELECT
a.first_name
, a.last_name
FROM actor a
WHERE a.last_name LIKE 'L%' ;
24개의 결과값이 반환된다.
fname |lname |
----------+------------+
MISTY |LAMBERT |
JACOB |LANCE |
RENEE |LANE |
HEIDI |LARSON |
DARYL |LARUE |
LAURIE |LAWRENCE |
JEANNE |LAWSON |
LAWRENCE |LAWTON |
KIMBERLY |LEE |
LOUIS |LEONE |
SARAH |LEWIS |
GEORGE |LINTON |
MAUREEN |LITTLE |
DWIGHT |LOMBARDI |
JACQUELINE|LONG |
AMY |LOPEZ |
BARRY |LOVELACE |
PRISCILLA |LOWE |
VELMA |LUCAS |
WILLARD |LUMPKIN |
LEWIS |LYMAN |
JACKIE |LYNCH |
MATTHEW |LEIGH |
JOHNNY |LOLLOBRIGIDA|
문제3.
last_name
열을 기준으로 문제2의 결과를 정렬하라.
- 정렬기준인
order by
는 쿼리문의 가장 마지막에 위치하도록 하라 했다. - 그리고 이때 정렬기준은 쿼리문의 맨 첫줄의 별칭과 동일하게 하라고 했으니까
SELECT
c.first_name AS fname
, c.last_name AS lname
FROM customer c
WHERE c.last_name LIKE 'L%'
UNION
SELECT
a.first_name
, a.last_name
FROM actor a
WHERE a.last_name LIKE 'L%'
ORDER BY lname ;
24개의 결과값이 성(last name) 기준으로 정렬되었당 😊
fname |lname |
----------+------------+
MISTY |LAMBERT |
JACOB |LANCE |
RENEE |LANE |
HEIDI |LARSON |
DARYL |LARUE |
LAURIE |LAWRENCE |
JEANNE |LAWSON |
LAWRENCE |LAWTON |
KIMBERLY |LEE |
MATTHEW |LEIGH |
LOUIS |LEONE |
SARAH |LEWIS |
GEORGE |LINTON |
MAUREEN |LITTLE |
JOHNNY |LOLLOBRIGIDA|
DWIGHT |LOMBARDI |
JACQUELINE|LONG |
AMY |LOPEZ |
BARRY |LOVELACE |
PRISCILLA |LOWE |
VELMA |LUCAS |
WILLARD |LUMPKIN |
LEWIS |LYMAN |
JACKIE |LYNCH |
Author And Source
이 문제에 관하여(문제 (6) - 집합연산자), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@golmori/exercise-006저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)