간단히 답하면
SQL 시험은 데이터, 분석가 또는 개발자 직무 면접 전에 데이터베이스 쿼리를 읽고 작성하고 수정할 수 있는지 확인하기 위해 많은 고용주가 사용하는 짧은 평가입니다. 정해진 단일 SQL 시험은 없습니다. 고용주마다 플랫폼을 선택하고 문항과 시간 제한을 정합니다. 이 무료 연습 시험은 여러 환경에서 사용할 수 있는 표준 SQL에 관한 독창적인 문항 10개로 구성되며, 25분이 걸립니다.
- 무료 샘플
- 25분 동안 10문항
- 형식
- 고용주별로 다릅니다
- 예시 (HackerRank SQL Basic)
- 30분 동안 2문항
- 예시 (TestGorilla MySQL)
- 10분 동안 15문항
- 공용 공간
- 필터링, 조인, 그룹화, 정렬 및 NULL
무료로 체험
25분 동안 실전 속도로 10문제를 풀어 보세요. 마지막에 점수와 모든 답변에 대한 설명을 확인할 수 있습니다.
요금제를 선택하세요
전체 연습 콘텐츠 이용
SQL 테스트: 전체 길이의 시간제한 모의고사와 다른 모든 테스트
월간 플랜 시작- 이 테스트의 전체 길이 시간제한 모의고사
- 모든 문항에 대한 해설
- 문제 유형별 점수와 응시 기록
- 연습 테스트 93개 전체 포함
- 휴대폰과 노트북에서 이용 가능
전체 모의고사를 1회 이하로 응시한 경우 7일 이내 환불해 드립니다. 가격은 USD 기준입니다.
전체 연습 콘텐츠에 포함된 내용
실제 시험 형식과 시간에 맞춘 전체 길이 모의고사입니다. 각 모의고사를 마치면 전체 복습을 할 수 있습니다.
- 무료무료 샘플10문제 · 25분
- 전체 길이 모의고사실제 시험의 문항 수와 제한 시간
- 모든 문제 유형SQL 개념, 쿼리가 반환하는 내용, 쿼리 수정 등
- 전체 복습모의고사를 볼 때마다 확인하는 문제 유형별 점수
- 점수 기록응시할 때마다 쌓이는 진행 상황
- 휴대폰 또는 노트북어디서나 연습하세요
- SQL 개념90%
- 쿼리가 반환하는 내용75%
- 쿼리 수정60%
- 올바른 쿼리 선택35%
다음으로 연습할 항목: 올바른 쿼리 선택.
무료 샘플 또는 전체 연습
| 기능 | 무료 | 전체 |
|---|---|---|
| 실제 시험과 비슷한 유형의 문제 | ||
| 모든 답변에 해설 제공 | ||
| 전체 길이 시간제한 모의고사 | ||
| 문제 유형별 점수 | ||
| 모의고사별 점수 기록 | ||
| 연습 테스트 93개 전체 |
무료 학습 가이드
실제 시험에 대해 알아야 할 모든 내용을 짧은 강의로 확인하세요.
실제 시험은 보통 어떤 방식인가요
SQL 시험은 하나로 정해져 있지 않습니다. 각 고용주는 테스트 플랫폼을 선택하거나 자체 시험을 만들고, 문항 수와 시간, 사용할 데이터베이스를 정합니다. 채용 공고나 시험 초대장이 어떤 시험인지 파악하는 데 가장 좋은 안내입니다. 공개된 사례를 보면 시험 유형이 다양합니다.
- HackerRank의 SQL 기술 테스트. HackerRank는 SQL (Basic) 기술 테스트를 간단한 쿼리 같은 주제를 다루는 30분 동안 2문항 시험으로 소개하고 있으며 (HackerRank), SQL (Intermediate) 테스트는 복잡한 조인 같은 주제를 다루는 35분 동안 2문항 시험으로 소개합니다 (HackerRank). 자체 HackerRank 시험을 만드는 고용주는 데이터베이스 관련 문항을 추가하고 응시자가 사용할 수 있는 데이터베이스를 선택할 수 있습니다 (HackerRank support).
- 쿼리 작성 과제. TestGorilla는 SQLite 코딩 테스트를 중간 정도 복잡도의 데이터베이스를 대상으로 현실적인 상황에 맞는 쿼리를 작성하는 30분 시험으로 설명합니다. 조인과 필터링, 간단한 계산, 정렬과 반올림, 관련 없는 항목 제외 등을 평가합니다 (TestGorilla).
- 짧은 지식 테스트. TestGorilla의 MySQL 테스트는 101문항으로 이루어진 문제 풀에서 출제되는 10분 동안 15문항 시험입니다 (TestGorilla).
SQL 시험에서 일반적으로 다루는 영역:
- 필터링 및 정렬: SELECT, WHERE, ORDER BY, 그리고 AND, OR, IN, BETWEEN을 사용한 조건.
- 조인: 내부 조인과 왼쪽 조인, 그리고 일치하는 항목이 없는 행의 처리 방식.
- 그룹화: COUNT, SUM, AVG, MIN, MAX와 함께 사용하는 GROUP BY 및 그룹을 필터링하는 HAVING.
- NULL: 비교, 개수 계산, 평균 계산에서 누락된 값이 처리되는 방식.
- 하위 쿼리: IN, EXISTS 또는 단일 값과 함께 사용하는 중첩 쿼리.
- 일반적인 요청을 쿼리로 작성하기. 반환된 행이 예상 결과와 정확히 일치하는지를 기준으로 채점하는 경우가 많습니다.
모의고사에서 다루는 내용. 각 전체 모의고사는 네 개 영역으로 구성된 45분 동안 18문항 시험입니다. SQL 개념 (5문항), 쿼리 결과 파악 (6문항), 쿼리 수정 (4문항), 적절한 쿼리 선택 (3문항)입니다. 이전 문항으로 돌아가 표시해 둘 수 있습니다. PostgreSQL, MySQL, SQL Server, SQLite 및 대부분의 다른 데이터베이스에서 같은 의미를 갖도록 이식성이 높은 표준 SQL을 사용합니다. 모의고사에서는 쿼리를 읽고 추적하며 선택하는 연습을 할 수 있지만, 직접 작성한 쿼리를 실행하지는 않습니다. 실제 SQL 시험 중에는 예상 결과와 대조해 검증하는 쿼리를 작성해야 하는 경우가 많습니다. 따라서 모의고사로 쿼리를 읽고 추적하는 기초 역량을 기르고, SQLite 같은 무료 데이터베이스에서 직접 쿼리도 작성해 보세요.
풀이 예제가 포함된 문제 유형
각 섹션의 예제와 사람들이 흔히 빠지는 함정을 살펴봅니다.
1. SQL 개념. COUNT()와 COUNT(email)의 차이는 무엇인가요? COUNT()는 모든 행을 셉니다. COUNT(email)은 email이 NULL이 아닌 행만 셉니다. 함정: 모든 COUNT가 모든 행을 포함한다고 생각하는 것입니다. 대부분의 집계 함수는 NULL을 건너뜁니다.
2. 쿼리 결과. scores 테이블에 8, 5, NULL, 8이라는 값이 있습니다. SELECT COUNT(DISTINCT score)는 어떤 값을 반환할까요? 중복되지 않은 NULL이 아닌 값은 8과 5이므로 답은 2입니다. 함정: NULL을 값으로 세거나 중복된 8을 두 번 세는 것입니다. 테이블을 적어 놓고 쿼리가 처리하는 방식대로 행을 하나씩 지워 보세요.
3. 쿼리 수정하기. 쿼리에 WHERE city = 'Austin' OR city = 'Dallas' AND active = 1이라고 적혀 있는데, 비활성 상태인 Austin 고객도 반환됩니다. AND가 OR보다 먼저 처리되므로 실제 조건은 Austin이거나 활성 상태인 Dallas를 뜻합니다. 괄호를 추가해 다음과 같이 수정하세요. WHERE (city = 'Austin' OR city = 'Dallas') AND active = 1. 함정: 조건을 왼쪽에서 오른쪽으로만 읽는 것입니다.
4. 올바른 쿼리 선택하기. 가장 최근 주문 5건을 찾아야 합니다. ORDER BY order_date DESC에 제한 5를 적용하는 것과 ORDER BY order_date에 제한 5를 적용하는 것 중 어느 쪽이 맞을까요? 첫 번째입니다. DESC가 없으면 오래된 순서로 정렬되므로 가장 오래된 주문 5건을 가져옵니다. 함정: 정렬 방향을 확인하지 않고 맞아 보이는 쿼리를 고르는 것입니다. (데이터베이스마다 LIMIT 5 또는 FETCH FIRST 5 ROWS ONLY처럼 제한을 나타내는 방식이 다르므로, 시험에서 어떤 방식을 사용하는지 확인하세요.)
5. 조건이 있는 조인. LEFT JOIN 다음에 오른쪽 테이블의 열을 WHERE로 검사하면, 일치하는 행이 없는 경우 해당 열이 NULL이고 조건에서 제외되므로 조용히 INNER JOIN으로 바뀝니다. 함정: 어떤 행이 사라지는지 알아차리지 못하는 것입니다. "일치하는 항목이 없는 행은 어떻게 되나요?"라고 자문해 보세요.
준비 방법
- 먼저 초대 안내를 읽으세요. 사용할 플랫폼과 제한 시간, 쿼리를 작성하는지 객관식 질문에 답하는지, 어떤 데이터베이스를 사용하는지 확인하세요. 형식이 매우 다양하므로 미리 짐작하기는 어렵습니다.
- 쿼리가 실행되는 순서를 익히세요. FROM과 JOIN, 그다음 WHERE, GROUP BY, HAVING, SELECT, ORDER BY 순서입니다. 각 단계에서 어떤 데이터를 다루는지 알면 "왜 틀렸지?"라는 질문 대부분을 이해할 수 있습니다.
- 작은 테이블을 손으로 따라가 보세요. 행을 서너 개 적고 각 절을 순서대로 적용하세요. 답을 확인하는 가장 빠른 방법이며 NULL과 중복으로 인한 함정도 찾아낼 수 있습니다.
- NULL은 별도의 주제로 다루세요. IS NULL, COUNT(column)과 COUNT(*)의 차이, NULL을 건너뛰는 AVG, 목록에 NULL이 있을 때의 NOT IN, 그리고 LEFT JOIN이 일치하지 않는 열에 넣는 값을 연습하세요.
- 실제 쿼리도 작성해 보세요. 저희 모의고사는 쿼리를 읽고 실행 과정을 추적하는 능력을 키워 줍니다. 시간제한 안에 입력하는 데 익숙해지도록 SQLite 같은 무료 데이터베이스에서도 쿼리를 작성해 보세요. 일부 테스트는 여러 사례에 대해 쿼리를 확인합니다. 예를 들어 TestGorilla는 SQLite 테스트에서 10개가 넘는 테스트 사례를 설명합니다 (TestGorilla).
- 문법뿐 아니라 결과도 확인하세요. 실행되는 쿼리라도 잘못된 행을 반환할 수 있습니다. 제출하기 전에 일치하는 항목이 없거나 중복 또는 NULL이 있을 때 어떤 결과가 나오는지 확인하세요.
- 실제 속도에 맞춰 연습하세요. TestGorilla의 MySQL 테스트처럼 짧은 지식 테스트는 10분에 15문항이므로 문항당 1분도 채 주어지지 않습니다 (TestGorilla). 실제 시험 당일에 익숙하게 느껴지도록 전체 시간제한 모의고사를 풀어 보세요.
일반적인 채점 방식
점수 산정 방식은 고용주와 플랫폼에 따라 다릅니다. 표준 SQL 점수나 보편적인 합격 기준은 없습니다. 좋은 결과가 무엇인지는 고용주마다 다르게 판단합니다. 쿼리 문제를 채점하는 방법을 보여 주는 공개 사례 두 가지를 소개합니다.
- HackerRank 데이터베이스 문제: HackerRank는 쿼리 결과를 예상 출력과 비교해 자동으로 점수를 매긴다고 설명합니다. 결과가 일치하면 만점을 받고, 그렇지 않으면 0점을 받습니다. 단, 고용주가 직접 검토해 부분 점수를 줄 수도 있습니다. 고용주는 행의 순서를 채점에서 제외할 수도 있습니다 (HackerRank 지원).
- TestGorilla의 SQLite 테스트: TestGorilla는 솔루션의 예외 상황을 확인하는 10개가 넘는 테스트 케이스를 사용해 지원자의 순위를 매긴다고 설명합니다 (TestGorilla).
결과를 행별로 확인하는 경우가 많으므로, 주문이 없는 고객을 제외하는 것처럼 거의 맞지만 완전히 정확하지 않은 쿼리는 답을 아예 제출하지 않은 것과 같은 점수를 받을 수 있습니다.
연습 점수는 자체 문제 중 정답을 맞힌 문제 수이며, 집중할 부분을 확인할 수 있도록 영역별 내역도 제공합니다. 이 점수는 연습용 점수입니다. 고용주나 플랫폼의 테스트 점수가 아니며, 합격 여부를 예측하지 않습니다.
흔한 실수
- =를 사용해 NULL과 비교하기. IS NULL과 IS NOT NULL을 사용하세요. = NULL은 어떤 값과도 일치하지 않는 알 수 없는 결과이므로 해당 행은 제외됩니다.
- WHERE에서 left join 결과를 필터링하기. 오른쪽 테이블의 열에 조건을 적용하면 일치 항목이 없는 행이 제거됩니다. 해당 행을 유지해야 한다면 그 조건을 ON 절에 넣으세요.
- 합계에 WHERE 사용하기. 집계 조건은 GROUP BY 다음에 오는 HAVING에 넣어야 합니다.
- 그룹화하지 않은 열을 선택하기. 표준 SQL에서는 선택하는 모든 열을 그룹화하거나 집계해야 합니다. 일부 데이터베이스는 쿼리를 실행하고 임의의 값을 선택하기도 해 실수를 알아채기 어렵습니다.
- 중복을 잊기. join으로 행이 반복되면 SUM과 COUNT가 부풀려질 수 있습니다. 한쪽의 각 행이 다른 쪽의 여러 행과 일치할 수 있는지 확인하세요.
- 특정 데이터베이스의 편의 기능에 의존하기. 함수와 제한 구문은 데이터베이스마다 다를 수 있습니다. 표준 형식을 익히고 테스트에서 어떤 데이터베이스를 사용하는지 확인하세요.
모든 연습 문제는 독창적으로 제작되며, 실제 문제나 유출된 문제가 아닙니다. 월간 플랜은 언제든지 해지할 수 있습니다. 전체 모의고사를 1회 이하로 응시했다면 7일 이내에 환불을 요청할 수 있습니다.
자주 묻는 질문
모든 고용주가 사용하는 SQL 테스트가 하나로 정해져 있나요?+
아닙니다. 고용주마다 플랫폼, 문제, 시간 제한, 데이터베이스가 다릅니다. 예상 결과와 대조하는 쿼리를 작성하게 하는 곳도 있고, 객관식 문제를 내는 곳도 있습니다. 어떤 유형인지 시험 초대장에서 확인할 수 있습니다.
어떤 SQL 방언을 연습해야 하나요?+
저희 문제에서 사용하는 표준 SQL부터 익히세요. PostgreSQL, MySQL, SQL Server 및 SQLite에서 사용할 수 있습니다. 그런 다음 초대장을 확인하세요. 데이터베이스가 명시되어 있다면 해당 데이터베이스에서 제한값, 날짜 및 문자열 함수를 어떻게 작성하는지 알아보세요.
모의고사에서 작성한 쿼리를 실행하나요?+
아닙니다. 모의시험에서는 쿼리를 읽고, 실행 과정을 추적하고, 수정하고, 선택하는 연습을 합니다. 실제 시험 중에는 예상 행과 대조되는 쿼리를 작성해야 하는 경우가 많으므로 SQLite 같은 무료 데이터베이스에서 쿼리를 작성하는 연습도 하세요.
SQL 테스트에 통과하려면 몇 점을 받아야 하나요?+
모든 곳에 공통으로 적용되는 합격 기준은 없습니다. 고용주마다 기준이 다르며, 일부는 답변을 직접 검토합니다. 모든 쿼리를 정확하게 작성하는 것을 목표로 하세요. 행이 조금이라도 잘못 반환되면 점수를 받지 못하는 경우가 많습니다.
이 문제들은 고용주가 사용하는 SQL 테스트에서 가져온 것인가요?+
아니요. 이 문제들은 비슷한 스타일로 저희 팀이 직접 만든 연습 문제입니다. Intellect Council은 HackerRank (Interviewstreet, Inc.), TestGorilla 또는 어떤 시험 플랫폼이나 고용주와도 제휴 관계가 아닙니다.
출처
- HackerRank: SQL (기초) 기술 테스트, 2026-11-09에 확인됨
- HackerRank: SQL (중급) 기술 테스트, 2026-11-09에 확인됨
- HackerRank 지원: 데이터베이스 엔지니어 문제(데이터베이스 문제 채점하기), 2026-11-09에 확인됨
- TestGorilla: SQLite(코딩): 실제 상황에서의 쿼리 테스트, 2026-11-09에 확인됨
- TestGorilla: MySQL 테스트, 알아둘 점, 2026-11-09에 확인됨
관련 연습
구직자를 위한 연습 테스트
채용 적성검사, 추론 검사, 심리검사, Wonderlic 유형, CCAT 유형 및 Excel을 위한 무료 시간제한 연습 테스트입니다. 계정 없이 바로 시작할 수 있습니다.
둘러보기Python 코딩 시험 연습
무료 Python 평가 연습: 개념, 코드 출력 결과, 버그 찾기, 작동하는 해결책 선택을 단계별로 살펴봅니다.
둘러보기JavaScript 코딩 시험 연습
무료 JavaScript 시험 연습: 개념, 코드의 로그 출력 결과, 비동기 실행 순서, 버그 찾기, 작동하는 해결책 선택을 단계별로 살펴봅니다.
둘러보기준비된 상태로 시험에 임하세요.
최선을 다했다는 마음으로 마무리하세요.
실제 시험 형식으로 시간 제한을 두고 연습하며 모든 답변에 대한 설명을 확인하세요.