ADsP 자격증 시험을 쳤고,
SQLD 자격증 시험도 신청을 해둔 상태입니다.
그래서 SQLD 자격증 공부도 할겸, 실제로 SQL 사용도 할 줄 아는게 좋을 것 같아서 배워볼려고 합니다.
강의를 들으면서 학습할까 싶었으나!
으로 인해 강의는 결제하거나 유튜브 강의를 듣진 않을 것 같고,
문제풀이 사이트에서 문제를 풀면서 구글링해보며 학습하는 방법을 선택했습니다.
SQL 구문이나 문법에 대해 거의 아무것도 모르기때문에 천천히 찾아보며 문제를 풀어보도록 하겠습니다
해커랭크 에 접속해서 문제를 풀었습니다.
-- 정답코드
SELECT * FROM CITY
WHERE POPULATION > 100000 AND CountryCode = 'USA';
--
CITY
라는 table에서 POPULATION
이 100,000 이상이면서
CountryCode
가 USA인 모든 column을 출력하라는 문제입니다.
*
표시는 모든 column을 뜻합니다. 이를 SELECT
했으니 모든 column을 선택하겠단 의미인데
FROM
은 어떤 테이블을 표시할지 정하는 문법입니다.
CITY
의 열들을 표시해야 하니 FROM CITY
로 작성하게 되고,
별다른 조건이 없다면 이걸로 문제가 끝나겠지만,
POPULATION
이 100,000 이상이고 CountryCode
가 USA인 CITY
가 필요하다고 합니다. 그렇다면 조건문을 걸어주어야 한다는 소리인데
sql에서 조건문은 WHERE
이라는 문법으로 걸어주나봅니다.
여러 조건을 걸 때는 AND
를 사용해서 하나씩 추가합니다.
-- 정답코드
SELECT NAME FROM CITY
WHERE POPULATION > 120000 AND COUNTRYCODE = 'USA';
--
위의 1번 문제에서 달라진 것이라고는
NAME
만 선택하는 것이 두 가지입니다.
코드상으로 달라진 부분도 이 부분을 제외하면 1번 문제와 다른 것은 없습니다.
-- 정답코드
SELECT * FROM CITY;
이번에는 위의 문제보다 더 쉽습니다. CITY
에 있는 모든 column을 선택하라고 했으니, 어떠한 조건문 없이 위의 코드로 마무리하면 됩니다.
-- 정답코드
SELECT * FROM CITY
WHERE ID = 1661;
--
CITY
에서 ID
가 1661인 column만 선택하면 되므로
WHERE
을 활용한 조건문으로 마무리합니다.
COUNTRYDCODE
가 JPN인 column만 선택하면 됩니다.
WHERE
을 활용한 조건문으로 마무리합니다.
5문제를 빠르게 풀어봤습니다.
제일 첫 번째 문제에서 기본적인 문법에 대해 살펴본 이후로는
나머지 네 문제는 응용이랄것도 없이 바로바로 풀 수 있었습니다.
다음 다섯 문제는 다른 문법이 나와서 더 활용할만한 것들이 있었으면 좋겠습니다.