반응형
SQL Zoo 05 - SELECT within SELECT Tutorial
Database
문제 1. 러시아보다 인구가 많은 나라 이름을 나열하세요.
정답
1
2
3
4
5
|
SELECT name
FROM world
WHERE population >
(SELECT population FROM world
WHERE name='Russia')
|
cs |
문제 2. 1인당 GDP가 '영국'보다 큰 유럽 국가들을 보여주세요.
정답
1
2
3
4
5
6
|
SELECT name
FROM world
WHERE gdp/population >
(SELECT gdp/population FROM world
WHERE name='United Kingdom')
AND continent= 'Europe'
|
cs |
문제 3. 아르헨티나나 호주를 포함하는 대륙의 나라 이름과 대륙을 나열하시오. 국가 이름을 기준으로 정렬합니다.
정답
1
2
3
4
5
6
7
8
9
10
|
SELECT name, continent
FROM world
WHERE continent =
(SELECT continent FROM world
WHERE name='Argentina')
OR
continent =
(SELECT continent FROM world
WHERE name='Australia')
ORDER BY name
|
cs |
문제 4. 인구가 캐나다보다는 많지만 폴란드보다는 적은 나라는 어디인가요? 이름과 인구를 표시합니다.
정답
1
2
3
4
5
6
7
8
9
|
SELECT name, population
FROM world
WHERE population <
(SELECT population FROM world
WHERE name='Poland')
AND
population >
(SELECT population FROM world
WHERE name='Canada')
|
cs |
문제 5. 독일은 유럽에서 가장 인구가 많은 나라이다. 오스트리아(인구 850만명)는 독일 인구의 11%를 차지한다.유럽의 각 나라 이름과 인구를 보여 주세요. 독일 인구의 백분율로 인구를 보여 주세요.
정답
1
2
3
4
5
6
7
8
|
SELECT
name,
CONCAT(ROUND((population*100)/(SELECT population
FROM world WHERE name='Germany'), 0), '%')
FROM world
WHERE population IN (SELECT population
FROM world
WHERE continent='Europe')
|
cs |
문제 6. 유럽의 모든 나라보다 더 큰 GDP를 가진 나라는 어디인가? [이름만 제공] (일부 국가에서는 NULL gdp 값이 있을 수 있음)
정답
1
2
3
|
SELECT name
FROM world
WHERE gdp > (SELECT MAX(gdp) FROM world WHERE continent = 'Europe')
|
cs |
문제 7. 각 대륙에서 가장 큰 나라(면적 기준)를 찾아 대륙, 이름 및 지역을 표시합니다.
정답
1
2
3
4
5
|
SELECT continent, name, area
FROM world
WHERE area IN (SELECT MAX(area)
FROM world
GROUP BY continent)
|
cs |
문제 8. 각 대륙과 알파벳 순으로 가장 먼저 오는 나라 이름을 나열하세요.
정답
1
2
3
4
5
|
SELECT continent, name
FROM world x
WHERE name <= ALL(SELECT name
FROM world y
WHERE x.continent = y.continent);
|
cs |
문제 9. 모든 국가의 인구가 <= 25000000인 대륙을 찾아보세요. 그리고 나서 이 대륙들과 관련된 나라들의 이름을 찾으세요. 이름, 대륙 및 인구를 표시합니다.
정답
1
2
3
4
5
6
|
SELECT name, continent, population
FROM world x
WHERE 25000000>=ALL (SELECT population
FROM world y
WHERE x.continent=y.continent
AND population>0)
|
cs |
문제 10. 어떤 나라들은 이웃 나라들의 3배 이상의 인구를 가지고 있다. 나라와 대륙을 추출해보세요.
정답
1
2
3
4
5
6
7
|
SELECT name, continent
FROM world x
WHERE population > ALL(SELECT population*3
FROM world y
WHERE x.continent = y.continent
AND population > 0
AND y.name != x.name)
|
cs |
반응형
'공부 > SQL' 카테고리의 다른 글
SQL Zoo 07 - JOIN (0) | 2022.01.11 |
---|---|
SQL Zoo 06 - SUM and COUNT (0) | 2022.01.11 |
SQL Zoo 04 - SELECT from Nobel Tutorial (0) | 2022.01.09 |
SQL Zoo 03 - Select from WORLD (0) | 2022.01.06 |
SQL Zoo 02 - Select Name (0) | 2022.01.05 |
댓글