SQL Quiz
SQL Quiz: SQL 기본 개념 퀴즈
다음은 SQL의 주요 개념을 점검할 수 있는 퀴즈입니다. 각 질문은 데이터 조회, 삽입, 수정, 삭제와 같은 핵심 SQL 작업을 다룹니다.
1. 데이터베이스를 생성하는 올바른 명령어는 무엇입니까?
a) CREATE TABLE
b) CREATE DATABASE
c) NEW DATABASE
d) MAKE DATABASE
정답: b) CREATE DATABASE
CREATE DATABASE
명령어는 새로운 데이터베이스를 생성합니다.
2. SELECT
문에서 모든 열을 조회하려면 어떤 키워드를 사용해야 합니까?
a) SELECT ALL
b) SELECT EVERYTHING
c) SELECT *
d) SELECT %
정답: c) SELECT *
SELECT *
는 테이블의 모든 열을 조회합니다.
3. 다음 SQL 쿼리의 출력 결과는 무엇입니까?
SELECT name, salary FROM employees WHERE salary > 50000;
a) employees
테이블에서 salary
가 50,000 이상인 모든 직원의 이름과 급여를 조회
b) 모든 직원의 이름과 급여를 조회
c) salary
가 50,000 이하인 모든 직원의 이름과 급여를 조회
d) 오류 발생
정답: a) employees
테이블에서 salary
가 50,000 이상인 모든 직원의 이름과 급여를 조회
WHERE salary > 50000
은 급여가 50,000 이상인 직원들의 데이터를 필터링합니다.
4. 테이블에 새 데이터를 삽입할 때 사용하는 명령어는 무엇입니까?
a) INSERT INTO
b) ADD INTO
c) UPDATE
d) MERGE
정답: a) INSERT INTO
INSERT INTO
는 테이블에 새로운 데이터를 삽입하는 명령어입니다.
5. 다음 SQL 쿼리에서 실행되지 않는 이유는 무엇입니까?
SELECT name, email FROM users WHERE email = NULL;
a) users
테이블에 email
필드가 없음
b) WHERE email = NULL
대신 WHERE email IS NULL
을 사용해야 함
c) email
필드는 문자열이므로 오류 발생
d) SQL에서 NULL
값은 비교할 수 없음
정답: b) WHERE email = NULL
대신 WHERE email IS NULL
을 사용해야 함
NULL
값은 =
연산자로 비교할 수 없으며, IS NULL
또는 IS NOT NULL
을 사용해야 합니다.
6. 테이블에서 데이터를 삭제하는 SQL 명령어는?
a) REMOVE
b) DELETE
c) DROP
d) ERASE
정답: b) DELETE
DELETE
는 테이블에서 특정 데이터를 삭제하는 명령어입니다.
7. 다음 SQL 쿼리의 출력 결과는 무엇입니까?
SELECT COUNT(*) FROM orders;
a) orders
테이블의 총 열(column) 개수를 반환
b) orders
테이블의 중복된 값을 제외한 행 개수를 반환
c) orders
테이블의 총 행(row) 개수를 반환
d) orders
테이블의 주문 내역을 출력
정답: c) orders
테이블의 총 행(row) 개수를 반환
COUNT(*)
는 테이블에서 모든 행(row)의 개수를 반환합니다.
8. 테이블을 삭제하는 SQL 명령어는 무엇입니까?
a) DELETE TABLE
b) REMOVE TABLE
c) DROP TABLE
d) CLEAR TABLE
정답: c) DROP TABLE
DROP TABLE
명령어는 테이블 자체를 삭제하는 명령어입니다.
9. 다음 SQL 쿼리의 역할은 무엇입니까?
SELECT name FROM customers WHERE name LIKE 'J%';
a) 이름이 'J'로 시작하는 고객을 조회
b) 이름에 'J'가 포함된 고객을 조회
c) 이름이 'J'인 고객만 조회
d) 이름이 'J'로 끝나는 고객을 조회
정답: a) 이름이 'J'로 시작하는 고객을 조회
LIKE 'J%'
는 이름이 'J'로 시작하는 모든 고객을 조회합니다.
10. 다음 SQL 명령어의 결과는 무엇입니까?
UPDATE employees SET salary = salary + 1000 WHERE name = 'Jane';
a) 모든 직원의 급여를 1000 증가시킴
b) 이름이 'Jane'인 직원의 급여를 1000 증가시킴
c) 모든 직원의 급여를 1000 감소시킴
d) 오류 발생
정답: b) 이름이 'Jane'인 직원의 급여를 1000 증가시킴
WHERE name = 'Jane'
에 해당하는 직원의 급여를 1000 증가시킵니다.
11. SQL에서 테이블의 구조(컬럼, 데이터 타입 등)를 확인하는 명령어는?
a) SHOW TABLE
b) DESCRIBE
c) LIST TABLE
d) DISPLAY TABLE
정답: b) DESCRIBE
DESCRIBE
명령어는 테이블의 구조를 보여줍니다.
12. 다음 쿼리의 출력 결과는 무엇입니까?
SELECT * FROM employees ORDER BY hire_date ASC;
a) employees
테이블을 hire_date
기준으로 내림차순 정렬
b) employees
테이블을 hire_date
기준으로 오름차순 정렬
c) employees
테이블을 임의로 정렬
d) employees
테이블에서 hire_date
필드만 조회
정답: b) employees
테이블을 hire_date
기준으로 오름차순 정렬
ORDER BY hire_date ASC
는 hire_date
를 기준으로 오름차순으로 정렬합니다.
13. GROUP BY
절을 사용할 때 주로 사용하는 SQL 함수는 무엇입니까?
a) COUNT()
b) AVG()
c) SUM()
d) 위의 모든 함수
정답: d) 위의 모든 함수
GROUP BY
는 데이터를 그룹화할 때 사용하며, COUNT()
, AVG()
, SUM()
과 같은 집계 함수들과 함께
자주 사용됩니다.
14. 외래 키(Foreign Key)는 무엇을 의미합니까?
a) 두 테이블 간의 관계를 정의하는 필드
b) 테이블에서 중복되지 않는 값을 저장하는 필드
c) 테이블에서 NULL 값을 허용하지 않는 필드
d) 테이블에서 자동으로 증가하는 필드
정답: a) 두 테이블 간의 관계를 정의하는 필드
외래 키는 두 테이블 간의 관계를 정의하는 필드로, 한 테이블의 필드가 다른 테이블의 기본 키를 참조합니다.
15. SQL에서 쿼리의 실행을 취소하고 변경 사항을 롤백하는 명령어는?
a) COMMIT
b) ROLLBACK
c) UNDO
d) CANCEL
정답: b) ROLLBACK
ROLLBACK
명령어는 트랜잭션을 취소하고 이전 상태로 되돌립니다.
16. 다음 중 SQL에서 데이터를 정렬할 때 사용하는 키워드는?
a) ORDER BY
b) SORT BY
c) ARRANGE
d) GROUP BY
정답: a) ORDER BY
ORDER BY
는 데이터를 오름차순 또는 내림차순으로 정렬하는 데 사용됩니다.
17. 다음 SQL 쿼리에서 LIMIT
는 어떤 역할을 합니까?
SELECT * FROM customers LIMIT 5;
a) 5개의 열만 조회
b) 5명의 고객만 조회
c) 첫 번째 5명의 고객만 조회
d) 5개의 테이블만 조회
정답: c) 첫 번째 5명의 고객만 조회
LIMIT 5
는 쿼리 결과에서 첫 번째 5개의 행만 조회합니다.
이 퀴즈를 통해 SQL의 기본 문법과 개념을 복습하고, 데이터베이스 관리 능력을 점검해 보세요!