SQLの基本(SELECT・INSERT・UPDATE・DELETE) えすきゅーえるのきほん
SELECTINSERTUPDATEDELETEDMLクエリ
SQLの基本(SELECT・INSERT・UPDATE・DELETE)について教えて
簡単に言うとこんな感じ!
SQLの4大操作は「CRUD」って呼ばれるDBの基本動作だよ!SELECT(読む)・INSERT(追加する)・UPDATE(更新する)・DELETE(消す)の4つで、ほとんどのDB操作はこれでできるんだ。英語に近い直感的な文法で、「どのテーブルから・どんな条件で・何をする」がそのまま書けるんだ!
SQLの基本とは
SQL(Structured Query Language)とは、リレーショナルデータベースを操作するための標準的な問い合わせ言語です。1970年代にIBMが開発し、1987年にISO標準化されました。現在もほぼすべてのRDBMS(MySQL・PostgreSQL・Oracle・SQL Server等)がSQL標準に準拠しています。
SQLのデータ操作命令をDML(Data Manipulation Language:データ操作言語)と呼び、主に4つあります。SELECT(データの読み取り)・INSERT(データの追加)・UPDATE(データの更新)・DELETE(データの削除)です。この4つは「CRUD(Create/Read/Update/Delete)」の頭文字でも表現されます。
SQLの特徴は宣言的(Declarative)である点です。「どのように取得するか」の手順ではなく「何を取得したいか」を記述します。たとえば「東京在住の顧客の名前を年齢順に取得して」という要求が、ほぼそのまま英語に近い文として記述できます。この直感的な文法がSQLの強みです。
4つの基本命令
| 命令 | CRUD | 役割 | 基本構文 |
|---|---|---|---|
| SELECT | Read(読む) | データを検索・取得 | SELECT カラム FROM テーブル WHERE 条件 |
| INSERT | Create(追加) | 新しいデータを追加 | INSERT INTO テーブル (カラム) VALUES (値) |
| UPDATE | Update(更新) | 既存データを変更 | UPDATE テーブル SET カラム=値 WHERE 条件 |
| DELETE | Delete(削除) | データを削除 | DELETE FROM テーブル WHERE 条件 |
歴史と背景
- 1970年:E.F.コッドがリレーショナルモデルを発表。SQLの理論的基盤
- 1974年:IBMがSEQUEL(後のSQL)を開発。System Rプロジェクトで実装
- 1979年:OracleがSQL搭載のDBMSを商用リリース(世界初)
- 1987年:ISO/IEC 9075としてSQL標準化(SQL-87)
- 1992年:SQL-92(SQL2)が制定。現在の多くのRDBが準拠する基準
- 1999年:SQL:1999(SQL3)。再帰クエリ・オブジェクト型などを追加
- 2003年〜現在:SQL:2003・2008・2011・2016・2023と進化。JSONサポート・ウィンドウ関数等を追加
SELECTの主要句
| 句 | 役割 | 例 |
|---|---|---|
| SELECT | 取得するカラムを指定 | SELECT name, price |
| FROM | 対象テーブルを指定 | FROM products |
| WHERE | 絞り込み条件 | WHERE price > 1000 |
| GROUP BY | グループ化 | GROUP BY category |
| HAVING | グループへの絞り込み | HAVING COUNT(*) > 5 |
| ORDER BY | 並び順 | ORDER BY price DESC |
| LIMIT | 取得件数制限 | LIMIT 10 |
関連する規格・RFC
| 規格・RFC番号 | 内容 |
|---|---|
| ISO/IEC 9075:1987 | SQL標準の原点(SQL-87) |
| ISO/IEC 9075:1992 | SQL-92。現在も最も広く実装されている標準 |
| ISO/IEC 9075:2023 | 最新のSQL標準。JSONサポート等を含む |