練習テスト技術・コーディング
SQLテスト対策
無料のSQL練習テストです。雇用主のSQL試験形式で、SQLの概念、クエリの実行結果、誤ったクエリの修正、適切なクエリの選択を扱います。各問題に解説が付いています。
- 無料問題10問、アカウント登録不要
- 本番と同じ時間設定
- いつでも解約可能
- 無料サンプル
- 10問 · 25分
- 問題の種類
- SQLの概念, クエリが返す値, クエリを修正するなど
- フル模擬テスト
- 実際の問題数と制限時間
簡単に言うと
SQLテストは、データ、アナリスト、開発者の面接前に、多くの雇用主がデータベースクエリを読んで書き、修正できるかを確認するために使う短い評価です。SQLテストは1種類だけではありません。雇用主ごとにプラットフォームを選び、問題と制限時間を設定します。この無料練習テストには、幅広く使える標準SQLのオリジナル問題が10問あり、所要時間は25分です。
- 無料サンプル
- 25分で10問
- 形式
- 雇用主によって異なります
- 例(HackerRank SQL Basic)
- 30分で2問
- 例(TestGorilla MySQL)
- 10分で15問
- 共用エリア
- フィルタリング、結合、グループ化、並べ替え、NULL
無料で試す
25分で10問を本番と同じペースで解きます。最後にスコアとすべての回答の解説を確認できます。
プランを選ぶ
すべての練習コンテンツを利用
SQLテスト:本番と同じ問題数・時間の模擬テストと、ほかのすべてのテスト
月額プランを始める- このテストの時間制限付きフル模擬テスト
- すべての問題に解説付き
- 問題タイプ別スコアと受験履歴
- 93件すべての練習テストが含まれます
- スマートフォン・ノートパソコンで利用可能
フル模擬テストの受験が1回以下の場合、7日間の返金保証があります。価格は米ドル表示です。
練習コンテンツの内容
実際のテストと同じ形式・時間設定のフル模擬テスト。各回の終了後に詳しい振り返りができます。
- Free無料サンプル10問 · 25分
- フル模擬テスト実際の問題数と制限時間
- あらゆる問題形式SQLの概念, クエリが返す値, クエリを修正するなど
- 詳しい振り返り模擬テストごとの問題タイプ別スコア
- スコア履歴受験ごとの進捗
- スマートフォンまたはノートパソコンどこでも練習
- SQLの概念90%
- クエリが返す値75%
- クエリを修正する60%
- 適切なクエリの選択35%
次に取り組む内容: 適切なクエリの選択。
無料サンプルまたは本格的な練習
| 特長 | Free | フル |
|---|---|---|
| 本番の形式を参考にした問題 | ||
| すべての回答に解説付き | ||
| 時間制限付きフル模擬テスト | ||
| 問題タイプ別スコア | ||
| 模擬テストごとのスコア履歴 | ||
| 全93件の練習テスト |
無料学習ガイド
実際のテストについて知っておきたいことを、短いレッスンで学べます。
実際のテストでよく見られる内容
SQLテストは一種類ではありません。 企業ごとに、テストプラットフォームを選ぶか独自のテストを作成し、問題数、制限時間、使用するデータベースを決めます。応募先の求人情報やテストの案内が、受けるテストについて知るための最良の手がかりです。公開されている例から、その幅広さがわかります。
- HackerRankのSQLスキルテスト。 HackerRankによると、SQL (Basic)スキルテストは30分で2問で、簡単なクエリなどが出題されます(HackerRank)。SQL (Intermediate)テストは35分で2問で、複雑な結合などが出題されます(HackerRank)。独自のHackerRankテストを作成する企業は、データベースに関する問題を追加し、受験者が使用できるデータベースを選べます(HackerRankのサポート)。
- クエリ作成課題。 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問)の4つのセクションで構成されています。前の問題に戻ったり、問題に印を付けたりできます。PostgreSQL、MySQL、SQL Server、SQLiteなど、ほとんどのデータベースで同じ意味になる、移植性の高い標準SQLを使用しています。模擬テストでは、クエリを読み、動作を追い、適切なものを選ぶ練習ができます。自分で書いたクエリを実行するテストではありません。実際のSQLテストでは、期待される結果と照合するクエリの作成を求められることが多いため、模擬テストでその土台となる読解力やトレース力を身につけるとともに、SQLiteなどの無料データベースで自分でもクエリを書いて練習しましょう。
解き方の例付き問題タイプ
各セクションの解答例を1つずつ紹介します。多くの人が陥りやすい落とし穴も確認しましょう。
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を2回数えたりすることです。テーブルを書き出し、クエリの処理に合わせて行を消していきましょう。
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の順です。どの段階でどのデータが参照されるかがわかると、「なぜこれが間違いなのか」という質問の多くを理解できます。
- 小さなテーブルを手作業で追いましょう。 3、4行を書き出して、各句を順番に適用します。答えを確認する最も手早い方法で、NULLや重複に関する落とし穴にも気づけます。
- NULLは独立したテーマとして学びましょう。 IS NULL、COUNT(column)とCOUNT(*)の違い、AVGがNULLを除外すること、リストにNULLが含まれる場合のNOT IN、LEFT JOINで一致しない列に何が入るかを練習してください。
- 実際にクエリも書きましょう。 模擬テストでは、クエリを読み解き、処理を追う力を鍛えられます。時間内に入力することに慣れるため、SQLiteなどの無料データベースでクエリを書く練習もしてください。テストによっては、多くのケースでクエリを確認します。たとえば、TestGorillaがSQLiteテストについて説明しているケース数は10件を超えます(TestGorilla)。
- 構文だけでなく、結果も確認しましょう。 クエリが実行できても、返される行が間違っていることがあります。提出前に、一致するデータがない場合、重複がある場合、NULLがある場合にどうなるかを確認してください。
- 本番に近いペースで練習しましょう。 TestGorillaのMySQLテストのように、10分で15問の短い知識テストでは、1問あたり1分もかけられません(TestGorilla)。本番で自然なペースで解けるよう、時間を計って模擬テストを最後まで受けましょう。
一般的な採点方法
採点方法は雇用主とプラットフォームによって異なります。 SQLの標準的なスコアや、すべてに共通する合格基準はありません。何を良い結果とするかは、各雇用主が決めます。クエリの問題の採点方法について、公開されている例を2つ紹介します。
- HackerRankのデータベース問題: HackerRankによると、クエリの結果を期待される出力と比較し、自動で採点します。一致すれば満点で、それ以外は0点です。ただし、雇用主が手動で確認して部分点を与える場合は除きます。また、雇用主は行の順序を採点対象外にすることもできます(HackerRankのサポート)。
- TestGorillaのSQLiteテスト: TestGorillaによると、解答の境界ケースを確認する10を超えるテストケースを使って、候補者を順位付けします(TestGorilla)。
結果は行ごとに確認されることが多いため、注文のない顧客を除外してしまうなど、ほぼ正解のクエリでも、無回答と同じ点数になることがあります。
当サイトの練習スコアは、当サイト独自の問題に正解した数をセクション別に示したものです。どこに重点を置くべきかを確認できます。これは練習用のスコアであり、雇用主やプラットフォームのテストのスコアではありません。また、合格できるかどうかを予測するものでもありません。
よくある間違い
- NULLとの比較に=を使う。 IS NULLとIS NOT NULLを使います。NULLとの比較結果は不明になるため、その行は除外されます。
- LEFT JOINの絞り込みをWHEREで行う。 右側のテーブルの列をWHEREで条件指定すると、一致しない行が除外されます。一致しない行も残す必要がある場合は、その条件をON句に入れます。
- 合計の計算にWHEREを使う。 集計条件には、GROUP BYの後に使うHAVINGを使います。
- GROUP BYに含めていない列を選択する。 標準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(Basic)スキルテスト、2026-11-09に確認済み
- HackerRank: SQL(Intermediate)スキルテスト、2026-11-09に確認済み
- HackerRankサポート:Database Engineerの問題(データベース問題の採点方法)、2026-11-09に確認済み
- TestGorilla:SQLite(コーディング):実際の状況でのクエリテスト、2026-11-09に確認済み
- TestGorilla:MySQLテストの概要、2026-11-09に確認済み
関連する練習問題
求職者向けの練習テスト
採用試験に向けた無料の時間制限付き練習テストをご利用いただけます。適性検査、推論テスト、心理検査、Wonderlic形式、CCAT形式、Excelの練習に対応しています。アカウント登録なしですぐに始められます。
テストを探すPythonコーディングテスト対策
Pythonアセスメントの無料練習:基本概念、コードの出力、バグの特定、動作する解決策の選択を、順を追って解説します。
テストを探すJavaScriptコーディングテスト対策
JavaScriptテストの無料練習:基本概念、コードのログ出力、非同期処理の順序、バグの特定、動作する解決策の選択を、順を追って解説します。
テストを探す準備を整えて臨みましょう。
ベストを尽くせたと思えるように。
本番形式の時間制限付き練習。すべての回答に解説が付いています。