21.04.28 16:14 작성
·
198
2
강사님 안녕하세요.
해당 문제 답을
SELECT city, length(city) length_city
FROM station
ORDER BY length_city, city
LIMIT 1;
SELECT city, length(city) length_city
FROM station
ORDER BY length_city DESC, city
LIMIT 1
라고 UNION 없이 적으셨는데 쿼리가 돌아가서 놀랐어요.
저는 개별 쿼리를 연결하려면 UNION이 꼭 필요하다고 생각했거든요.
그럼 쿼리 연결할 때 UNION이 꼭 필요한 경우는 언제인가요??
그냥 세미콜론 하나로 연결 가능하다면 UNION은 왜 존재하는지 혼란스럽습니다 ;_;
답변 3
1
2021. 05. 31. 07:28
1. 이 문제에서 UNION 대신 세미콜론을 사용한 이유는 정렬을 해야하기 때문입니다.
UNION과 ORDER BY 절이 같이 실행이 되지 않기 때문에 원하는 결과를 얻지 못할 수 있습니다.
2. 세미콜론으로 두 결과값을 연결해서 출력하는 방법은 서브쿼리 안에서는 사용 불가합니다.
만약 이 문제의 쿼리 전체가 서브쿼리 안에 들어가야 한다면 UNION, 또는 다른 방법으로 풀어야 합니다.
1