세 변의 길이를 사용하여 TRIANGLES 테이블의 각 레코드 유형을 식별하는 쿼리를 작성하세요. 테이블의 각 레코드에 대해 다음 명령문 중 하나를 출력합니다.
- 정삼각형 : 세 변의 길이가 같은 삼각형입니다.
- 이등변삼각형: 두 변의 길이가 같은 삼각형입니다.
- 스켈레네(Scalene): 3개의 변의 길이가 다른 삼각형입니다.
- 삼각형이 아님: 주어진 A, B, C 값이 삼각형을 형성하지 않습니다.
SELECT CASE WHEN A = B AND B = C THEN 'Equilateral'
WHEN A + B <= C OR B + C <= A OR A + C <= B THEN 'Not A Triangle'
WHEN A = B OR B = C OR A = C THEN 'Isosceles'
WHEN A != B AND B != C AND A != C THEN 'Scalene'
END
FROM TRIANGLES
인구가 100000보다 큰 CITY의 도시 수를 쿼리합니다.
SELECT COUNT(ID)
FROM CITY
WHERE POPULATION >= 100000
District가 California인 CITY에 있는 모든 도시의 총 인구를 쿼리합니다.
SELECT SUM(POPULATION)
FROM CITY
WHERE DISTRICT = 'CALIFORNIA'
District가 California인 CITY에 있는 모든 도시의 평균 인구를 쿼리합니다.
SELECT AVG(POPULATION)
FROM CITY
WHERE DISTRICT = 'CALIFORNIA'
CITY에 있는 모든 도시의 평균 인구를 쿼리하고 가장 가까운 정수로 내림합니다.
SELECT ROUND(AVG(POPULATION))
FROM CITY
CITY에 있는 모든 일본 도시의 인구 합계를 쿼리합니다. 일본의 국가 코드는 JPN입니다.
SELECT SUM(POPULATION)
FROM CITY
WHERE COUNTRYCODE = 'JPN'
CITY의 최대 인구와 최소 인구의 차이를 쿼리합니다.
SELECT MAX(POPULATION) - MIN(POPULATION)
FROM CITY
Samantha는 EMPLOYEES 테이블에 있는 모든 직원의 평균 월급을 계산하는 임무를 맡았지만 계산을 완료할 때까지 키보드의 0 키가 손상되었다는 사실을 깨닫지 못했습니다. 그녀는 자신의 계산 착오(0을 제거한 급여 사용)와 실제 평균 급여 간의 차이를 찾는 데 도움을 주기를 원합니다.
오류 금액(예: 실제 - 잘못 계산된 평균 월급)을 계산하는 쿼리를 작성하고 다음 정수로 반올림합니다.
WITH AVG_SALARY AS (
SELECT AVG(SALARY) AS AVG_SAL
FROM EMPLOYEES
)
SELECT CEIL(AVG(AVG_SAL - REPLACE(SALARY, '0', '')))
FROM AVG_SALARY
, EMPLOYEES
직원의 총 수입은 월급 * 근무 개월 수로 정의하고, 최대 총 수입은 Employee 테이블에 있는 모든 직원의 최대 총 수입으로 정의합니다. 전체 직원의 최대 총 소득과 최대 총 소득을 얻은 직원의 총 수를 구하는 쿼리를 작성하세요. 그런 다음 이 값을 공백으로 구분된 2개의 정수로 인쇄합니다.
SELECT MAX(SALARY * MONTHS)
, COUNT(EMPLOYEE_ID)
FROM EMPLOYEE
WHERE (MONTHS * SALARY) = (
SELECT MAX(SALARY * MONTHS)
FROM EMPLOYEE
)
STATION 테이블에서 다음 두 값을 쿼리합니다.
- LAT_N의 모든 값의 합계는 소수점 이하 2자리로 반올림됩니다.
- LONG_W의 모든 값의 합계는 소수점 이하 2자리로 반올림됩니다.
SELECT ROUND(SUM(LAT_N), 2)
, ROUND(SUM(LONG_W), 2)
FROM STATION
38.7880보다 크고 137.2345보다 작은 값을 갖는 STATION의 북위도(LAT_N) 합계를 쿼리합니다. 답을 소수점 4자리까지 자릅니다.
SELECT ROUND(SUM(LAT_N), 4)
FROM STATION
WHERE LAT_N >= 38.7880
AND LAT_N <= 137.2345
STATION에서 137.2345보다 작은 북위도(LAT_N)의 가장 큰 값을 쿼리합니다. 답을 소수점 4자리까지 자릅니다.
SELECT ROUND(MAX(LAT_N), 4)
FROM STATION
WHERE LAT_N <= 137.2345
137.2345보다 작은 STATION의 최대 북위도(LAT_N)에 대한 서부 경도(LONG_W)를 쿼리합니다. 답을 소수점 이하 4자리로 반올림하세요.
SELECT ROUND(LONG_W, 4)
FROM STATION
WHERE LAT_N = (
SELECT MAX(LAT_N)
FROM STATION
WHERE LAT_N <= 137.2345
)
38.7780보다 큰 STATION에서 가장 작은 북위도(LAT_N)를 쿼리합니다. 답을 소수점 이하 4자리로 반올림하세요.
SELECT ROUND(MIN(LAT_N), 4)
FROM STATION
WHERE LAT_N >= 38.7780
STATION의 최소 북위도(LAT_N)가 38.7780보다 큰 서부 경도(LONG_W)를 쿼리합니다. 답을 소수점 이하 4자리로 반올림하세요.
SELECT ROUND(MIN(LONG_W), 4)
FROM STATION
WHERE LAT_N = (
SELECT MIN(LAT_N)
FROM STATION
WHERE LAT_N >= 38.7780
)
CITY 및 COUNTRY 테이블이 주어지면 CONTINENT가 'Asia'인 모든 도시의 인구 합계를 쿼리합니다.
참고: CITY.CountryCode 및 COUNTRY.Code는 일치하는 키 열입니다.
SELECT SUM(A.POPULATION)
FROM CITY A
JOIN COUNTRY B
ON A.COUNTRYCODE = B.CODE
WHERE B.CONTINENT = 'Asia'
CITY 및 COUNTRY 테이블이 주어지면 CONTINENT가 'Africa'인 모든 도시의 이름을 쿼리합니다.
참고: CITY.CountryCode 및 COUNTRY.Code는 일치하는 키 열입니다.
SELECT A.NAME
FROM CITY A
JOIN COUNTRY B
ON A.COUNTRYCODE = B.CODE
WHERE B.CONTINENT = 'Africa'
CITY 및 COUNTRY 테이블이 주어지면 모든 대륙의 이름(COUNTRY.Continent)과 각 대륙의 평균 도시 인구(CITY.Population)를 가장 가까운 정수로 내림하여 쿼리합니다.
참고: CITY.CountryCode 및 COUNTRY.Code는 일치하는 키 열입니다.
SELECT B.CONTINENT
, FLOOR(AVG(A.POPULATION))
FROM CITY A
JOIN COUNTRY B
ON A.COUNTRYCODE = B.CODE
GROUP BY B.CONTINENT
P(R)은 Julia가 R 행에 그린 패턴을 나타냅니다. 다음 패턴은 P(5)를 나타냅니다.
* * * * *
* * * *
* * *
* *
*
패턴 P(20)을 인쇄하는 쿼리를 작성하세요.
DECLARE @I INT = 20
WHILE (@I > 0)
BEGIN
PRINT REPLICATE('* ', @I)
SET @I = @I - 1
END
P(R)은 Julia가 R 행에 그린 패턴을 나타냅니다. 다음 패턴은 P(5)를 나타냅니다.
*
* *
* * *
* * * *
* * * * *
패턴 P(20)을 인쇄하는 쿼리를 작성하세요.
DECLARE @I INT = 1
WHILE (@I < 21)
BEGIN
PRINT REPLICATE('* ', @I)
SET @I = @I + 1
END