SQL ZOO[MySQL] SELECT from WORLD Tutorial

2022. 2. 28. 02:21Site/SQL ZOO

world 테이블
SELECT를 이용하여 world 테이블의 모든 국가의 name, continent, population 조회
world 테이블에서 인구가 200000000 이상인 국가 조회
world테이블에서 인구가 최소 200000000보다 높은 국가와 1인당gdp 조회[1인당gdp = gdp/전체인구]
world테이블에서 대륙이 남미인 국가의 이름과 인구의 백만단위표시의 표시 조회[백만단위->인구/10000000]
world테이블에서 프랑스, 독일, 이탈리아의 이름을 가진 국가의 이름, 인구 조회
world 테이블에서 이름이 United가 포함된 국가의 이름 조회

*

% 와일드카드는 무엇이든지 올 수 있습니다

% : 미지의 글자 0개 이상을 의미합니다

%A% : 앞뒤로 어떤글자가 와도 상관없고 몇글자가 와도 상관이 없습니다

cf)_도 와일드카드의 일종으로 특정미지의 글자 하나를 의미합니다

   _A_ -> [어떤 1글자_A_어떤 1글자]

*

world테이블에서 지역이 3000000이 넘거나 인구가 250000000가 넘는 국가, 인구, 지역 조회
world테이블에서 지역이 3000000이 넘거나 인구가 250000000이 넘는 국가, 인구, 지역 조회 [단 둘다 부합하는것은 조회 X]
world테이블에서 남아메리카에속한 국가의 인구를 백만단위, gdp를 십억단위로 소수점이하 2자리가 나오도록 조회

*

ROUND 함수 : 반올림을 시켜주는 함수입니다

사용방법 : ROUND([숫자], [자리수])           ([자리수]에 아무것도 쓰지 않으면 기본값 0)

위에서는 소수점이하 2자리라고 했으므로 [자리수]자리에 2를 표시했습니다

cf) TRUNC 함수 :버림함수 입니다

    사용방법 : TRIM([숫자], [자리수])              ([자리수]에 아무것도 쓰지 않으면 기본값 0)

    ex) TRUNC(123.4567, 3) -> 123.456(소숫점 4째부터 버림) 

*

world테이블에서 gdp가 1조를 넘는 국가의 이름과 gdp[1000단위]로 조회
world테이블에서 국가이름과 수도의 글자수가 같은 국가의 이름, 수도 조회

*

LENGTH(문자열) : 문자의 개수를 출력해 줍니다

name의 개수와 capital의 개수가 일치하기 확인하기 위해서는 LENGTH()가 필요합니다

cf) CONCAT([문자열1], [문자열2]) : 2개의 문자열을 합쳐서 출력해 줍니다

    ex) CONCAT('hello', 'world') -> helloworld

    LENGTHB(문자열) : 문자의 바이트를 출력해 줍니다

    ex) LENGTHB('KOREA') -> 5

*

world테이블에서 국가이름, 수도이름의 앞글자가 같지만 모두 같지는 않은 국가의 이름, 수도 조회

*

LEFT(문자열, 문자열길이) : 문자열의 왼쪽길이 만큼 잘라내는 함수입니다

cf) RIGHT(문자열, 문자열길이)

    SUBSTRING(문자열, 시작자리번호, 자를문자개수) 

*

world테이블에서 모음[a, e, i, o, u]가 모두 들어가 있고 공백이 없는 국가의 이름 조회

*

위 문제를 해결하기 위해서는 일단 와일드 카드 %를 이용하여 모음 앞뒤에 무슨 문자가 와도 상관이 없고 AND 연산자를 이용하여 모든 %와일드카드가 붙여져 있는 모음들을 연결하였습니다. NOT LIKE 를 통해 공백이 있는 문자는 제외하는 명령을 이용하였습니다

*

'Site > SQL ZOO' 카테고리의 다른 글

SQL ZOO[MySQL] Nobel Quiz  (0) 2022.03.01
SQL ZOO[MySQL] SELECT from Nobel Tutorial  (0) 2022.03.01
SQL ZOO[MySQL]BBC QUIZ  (0) 2022.02.28
SQL ZOO[MySQL] SELECT Quiz  (0) 2022.02.27
SQL ZOO[MySQL] SELECT basics  (0) 2022.02.27