SQLとは?正式名称と基本チュートリアル
⚡ スマートサマリー
SQLとは何ですか?構造化クエリ言語は、リレーショナルデータベースを操作するための標準言語です。スキーマの作成、レコードのクエリ、行の更新、権限の管理、および最新のアプリケーションを次のようなエンジンに接続することができます。 PostgreSQL, MySQL、SQL Server。

SQLとは何ですか?
SQL SQLは、リレーショナルデータベースを操作するための標準言語です。レコードの挿入、検索、更新、削除に使用され、データベースの最適化と保守も可能です。SQLはANSIおよびISO規格であるため、同じコア構文が、などのエンジンで動作します。 PostgreSQL, MySQL, Oracle、SQL Server。
SQL 完全形式
SQLとは 構造化照会言語「SQL」または「シーケル」と発音します。 IBM 1970年代に開発されたリレーショナルデータベースなど MySQL, Oracle Database, Microsoft SQL Server, PostgreSQL, SAP SybaseはANSI SQLを基盤として使用している。
SQLの使用方法
SQLを実行するには、操作、対象テーブル、およびフィルタ条件を指定するステートメントを記述します。30歳以上のメンバーを返すSELECTクエリは次のようになります。
SELECT * FROM Members WHERE Age > 30;
データベース間の構文は、主要なエンジンがすべてANSI標準を実装しているため、ほぼ同様です。一部のRDBMS製品は独自のダイアレクトを追加しており、たとえばSQL ServerのT-SQLやPL/SQLなどがあります。 Oracle.
詳しくはこちら こちら ビデオにアクセスできない場合
SQLは何に使われるのですか?
SQLを使用する重要な理由を以下に示します。
- ユーザーがデータにアクセスするのに役立ちます RDBMSシステム.
- それはデータの説明に役立ちます。
- これにより、データベース内のデータを定義し、その特定のデータを操作できるようになります。
- SQL を使用すると、データベースとテーブルを作成および削除できます。
- SQLを使うと、データベース内の関数を使用したり、ビューを作成したり、ストアドプロシージャを記述したりできます。
- テーブル、プロシージャ、ビューに権限を設定できます。
- SQLは、レポート作成、ビジネスインテリジェンス、機械学習パイプラインへのデータ供給といった分析タスクをサポートします。
SQL の簡単な歴史
SQL の歴史の重要なランドマークを次に示します。
- 1970 – エドガー F. “テッド” コッド博士がデータベースのリレーショナル モデルについて説明しました。
- 1974年 – 構造化クエリ言語が登場 IBM 研究。
- 1978 年 IBM System/R をリリースしました。
- 1986年 – ANSIはSQLをSQL-86として標準化した。
- 1989年 – SQL標準の最初の商用版が公開された。
- 1999年 – SQL:1999でトリガーとオブジェクト指向機能が追加されました。
- SQL:2003 – ウィンドウ関数とXML機能。
- SQL:2006 – XMLクエリ言語のサポート。
- SQL:2011 – テンポラルデータベースのサポート。
- SQL:2016 – JSON、行パターン認識、ポリモーフィックテーブル関数。
- SQL:2023 – プロパティグラフクエリ(SQL/PGQ)とより厳密なJSON処理。
SQLステートメントの種類
以下に、広く使用されている5種類のSQL文を示します。
- データ定義言語(DDL)
- データ操作言語(DML)
- データ制御言語(DCL)
- トランザクション制御言語 (TCL)
- データクエリ言語(DQL)
SQLコマンドのリスト
以下は、最もよく使われるもののリストです。 SQLコマンド:
- CREATE – データベースの構造またはスキーマを定義します。
- INSERT テーブルの行にデータを挿入します。
- UPDATE ―データベース内の既存データを更新します。
- DELETE – テーブルから1つ以上の行を削除します。
- SELECT – WHERE句で指定された条件に一致する属性を選択します。
- DROP – テーブルとデータベースを削除します。
- MERGE 一致条件に基づいて、単一のステートメントでINSERTまたはUPDATEを実行します。
SQLプロセス
SQLコマンドを実行すると、データベースエンジンはステートメントを解析し、実行プランを選択して、ストレージ層に対して実行します。
このプロセスにおける重要な要素は以下のとおりです。
- SQLクエリエンジン
- 最適化エンジン
- クエリディスパッチャー
- クラシッククエリエンジン
従来のクエリエンジンは非SQLクエリを処理し、SQLクエリエンジンは構造化されたワークロードを処理します。

SQL標準
SQLは、データベースの作成、削除、行の取得と変更、およびアクセス制御をカバーします。これはANSI(米国国家規格協会)およびISO規格であり、現在の版は ISO / IEC 9075:2023一般的にSQL:2023と呼ばれる規格です。この規格はいくつかの部分に分かれています。
| パーツ | 詳細説明 |
|---|---|
| パート 1 – SQL/フレームワーク | 他のすべての部分の基礎となる論理的な概念を提供する。 |
| パート 2 – SQL/Foundation | SQLの中心的な構文と意味論を定義します。 |
| パート 3 – SQL/CLI | ODBCおよび類似のドライバで使用される呼び出しレベルインターフェイスを指定します。 |
| パート 4 – 永続的に保存されたモジュール | ストアド ルーチン、外部ルーチン、および SQL の手続き型言語拡張。 |
| パート 9 – 外部データの管理 | SQLがファイルなどの非SQLデータソースにアクセスできるようにする構文と定義を追加します。 |
| パート 10 – オブジェクト言語のバインディング | SQL を埋め込む構文と意味論を指定します。 Java. |
| パート 11 – SQL/スキーマ | 情報スキーマと定義スキーマ。 |
| パート13 – SQL/JRT | SQLルーチンと型を使用する Java プログラミング言語。 |
| パート 14 – SQL/XML | SQLとXML(XMLTYPEおよびXQueryとの統合を含む)。 |
| パート 15 – SQL/MDA | 多次元配列に対するSQLサポートを提供します。 |
| パート16 – SQL/PGQ | SQL:2023で、リレーショナルテーブル上にプロパティグラフクエリを定義する機能が追加されました。 |
最新のSQLエンジン
各エンジンはANSIコアの大部分を実装し、独自の拡張機能を追加しています。
- PostgreSQL 17: 厳格な標準規格に準拠したオープンソースソフトウェアで、豊富なJSONサポートを備えています。
- MySQL 8: ウェブアプリケーションでよく使われ、ウィンドウ関数、CTE、およびドキュメントストアモードをサポートしています。
- Microsoft SQL Server 2022: クエリインテリジェンスを備えたエンタープライズエンジンと Azure シナプスミラーリング。
- Oracle Database 23ai: SQLとベクトル検索、そしてJSONとリレーショナルデータの二重性ビューを組み合わせたものです。
- SQLite: モバイルアプリやブラウザに組み込まれた、軽量なファイルベースのエンジン。
クラウド倉庫など Amazon 赤方偏移、 Google BigQueryとSnowflakeはANSI SQLの方言も公開しており、ラップトップからペタバイト規模の分析まで、言語の移植性を高めている。
SQL言語の要素
SQL言語の重要な要素は以下のとおりです。
- キーワード: SELECT、FROM、WHEREなどの予約語は、すべてのステートメントを構成する要素です。
- 識別子: ユーザーID、テーブル、列など、データベースオブジェクトの名前。
- 文字列: リテラル文字列、またはVARCHAR型もしくはCHAR型のデータ型を持つ式。
- 式: 定数、SQL演算子、列名、およびサブクエリから構成されます。
- 検索条件: 行をフィルタリングしたり、IFなどの制御フロー文を使用したりします。
- 特別な値: 式や列のデフォルト値で使用されるCURRENT_TIMESTAMPなどの値。
- 変数: ほとんどのエンジンは、ストアドプロシージャ内でローカル変数、グローバル変数、および接続レベル変数をサポートしています。
- コメント: 単一行コメント(–)とブロックコメント(/* */)はSQLを記述するものですが、実行されません。
- NULL 値: NULLは、不明、欠落、または該当しない値を表します。
SQLにおけるデータベースとは何ですか?
A データベース テーブルとは、構造化データを格納するテーブルの集合です。テーブルは、行(レコードまたはタプル)と列(属性)で構成されます。
各列には、名前、日付、金額、数値など、特定の種類の情報が格納されます。テーブル間の関係は主キーと外部キーによって確立され、これがデータベースを「リレーショナル」たらしめている所以です。
NoSQLとは何ですか?
NoSQL のカテゴリです データベース管理システム その主な特徴は、関係概念に固執しないことである。NoSQLは「SQLだけではない」という意味である。このカテゴリは、次のようなインターネットの巨人とともに成長した。 Google、Facebook、および Amazon膨大なデータ量を扱う人々。
リレーショナルデータベースが膨大なデータ量を処理する場合、応答速度が低下する可能性があります。ハードウェアをアップグレードすることで「スケールアップ」するか、複数のホストに負荷を分散することで「スケールアウト」することができます。
NoSQLデータベースは 非リレーショナル Web アプリケーション用に設計されたストア。必ずしも SQL を使用したり、厳密なスキーマを強制したりするわけではなく、ACID (Atom(信頼性、一貫性、隔離性、耐久性)特性は、現代のシステムでは必ずしも保証されるわけではありませんが、 MongoDB (NAIST) と Cassandra トランザクションモードの調整機能を提供開始しました。
NoSQLの後にSQLを学ぶべき理由
NoSQLはリレーショナルモデルよりもスケーラブルであることを考えると、 なぜ今でもSQLを学ぶ人がいるのかNoSQLデータベースは、大規模で非構造化データセットに特化した最適なデータベースですが、ほとんどのビジネスアプリケーションは依然としてリレーショナルデータベースとそのツールに依存しています。
リレーショナルデータベースは、NoSQLに比べて以下の利点を保持しています。
- 成熟したデータストレージおよび管理モデルは、企業ユーザーにとって不可欠である。
- ビュー機能をサポートし、ユーザーが承認されたデータのみを閲覧できるようにします。
- ビジネスロジックをデータベースに反映させるストアドプロシージャをサポートします。
- より強力なセキュリティモデル、ロールベースのアクセス制御、および監査機能。
- SQLは、構造化された入力を必要とするBI、ダッシュボード、AIツールの共通言語です。
リレーショナルデータベースを扱える専門家の需要は 成長したがって、SQLの基礎を学ぶことは依然として明確なメリットがある。
SQLとAI:テキストからSQLへの変換ツール
SQLは現在、AIアシスタントのターゲット言語となっている。 テキストからSQLへの変換 ツールは、「前四半期の売上高上位10社の顧客を表示」といった平易な英語の質問を、実行可能なSQLに変換します。人気のあるオプションには以下のようなものがあります。 GitHubコパイロット, ヴァンナAI, Microsoft 副操縦士 Azure SQL、および Oracle AIを選択してください。生成されたSQLは、本番データで実行する前に、必ず正確性、セキュリティ、インデックス作成について確認してください。
SQLを学ぶためのおすすめ書籍
以下は、おすすめのSQL関連書籍の一部です。
- SQL初心者向けチュートリアル:
この 初心者向け SQL チュートリアル このPDFでは、基本的なデータベースの概念、MS-SQLコマンド、およびSQL結合などの高度なトピックについて解説しています。
- 10 分でわかる SQL: フルカラーのコード例で、SQL文の構造、ショートカット、既成のソリューションを解説します。 今すぐ購入
- SQL クックブック: SQLを使って文字列を走査し、文字や区切り文字を解析するなどの手法。 今すぐ購入
- SQL: The Complete Reference: ウィンドウ関数、行を列にピボットする操作、および逆ピボット操作について説明します。 今すぐ購入
- SQLポケットガイド: SQL関数、正規表現構文、型変換について解説します。 今すぐ購入
その他のSQL関連書籍については、こちらをご覧ください。 こちらをクリックしてください
