본문 바로가기
DB - SQL

[SQL Basic] Hackerrank 해커랭크 문제풀이 - African City (Join)

by 꾸리_No9 2024. 1. 28.

SQL 문제풀이

Q. Africa City 

    -  query the names of all cities where the CONTINENT is 'Africa'.

    - Note: CITY.CountryCode and COUNTRY.Code are matching key columns.

 

Method :

(1) JOIN 함수를 통해 공통된 값을 찾는다 → 일반 / INNER JOIN
(2) WHERE 조건절  Continent 'Africa'를 찾는다

 

 

Answer : 

1. 일반 JOIN 사용 

※ 일반 JOIN 조건특징  ◀ JOIN이라는 단어가 없음!  WHERE 절에 조건을 넣음! 

※ ORACLE MYSQL 함수 동일 적용 가능

SELECT CITY.NAME
FROM CITY, COUNTRY
WHERE CITY.COUNTRYCODE = COUNTRY.CODE AND COUNTRY.CONTINENT = 'Africa' ;

 

 

2.INNER JOIN 사용 

※ ANSI JOIN 조건 특징 ◀ JOIN이라는 단어가 나옴! FROM 절에서 테이블을 연결함!

   ( INNER JOIN + ON)

SELECT CITY.NAME
FROM CITY INNER JOIN COUNTRY
           ON CITY.COUNTRYCODE = COUNTRY.CODE
WHERE COUNTRY.CONTINENT = 'Africa' ;

 

 

3. NATURAL JOIN 사용 못함 

※ 2개의 테이블의 조인 칼럼명이 동일할 때만 사용 가능 

 

 본 내용은 HACKERRANK 사이트를 통한 SQL 문제풀이 내용입니다.