SQLの基本
SQLとは?
SQL (Structured Query Language) は、リレーショナルデータベースのデータを操作・定義するための国際標準言語です。データベースに対してデータの検索、追加、更新、削除といった命令(クエリ)を出す際に使用します。
データサイエンティストにとって、膨大なデータが格納されたデータベースから必要な情報を効率的に抽出するための必須スキルです。
SQLの3つの種類
SQLの命令は、その役割に応じて主に3つの種類に分類されます。
- 1. DDL (Data Definition Language) - データ定義言語
-
データベースやテーブルの構造そのものを作成・変更・削除するための言語です。
代表的なコマンド:CREATE
,DROP
,ALTER
,TRUNCATE
- 2. DML (Data Manipulation Language) - データ操作言語
-
テーブルに格納されているデータを検索・追加・更新・削除するための言語です。最もよく使われます。
代表的なコマンド:SELECT
,INSERT
,UPDATE
,DELETE
- 3. DCL (Data Control Language) - データ制御言語
-
データベースへのアクセス権限を設定・管理するための言語です。
代表的なコマンド:GRANT
,REVOKE
基本的な書き方とルール
- セミコロン(;)で文の終わりを示す: 1つのSQL命令(クエリ)の最後にはセミコロンを付けます。
- コメント: ハイフン2つ (
--
) を行頭に付けると、その行はコメントとして扱われ、実行時に無視されます。 - 大文字と小文字の区別: SQLの予約語(
SELECT
,FROM
など)は、大文字と小文字を区別しません。しかし、可読性を高めるために「予約語は大文字、テーブル名やカラム名は小文字」のようにスタイルを統一することが一般的です。 - 命名規則: データベース名、テーブル名、カラム名は、小文字の英数字とアンダースコア(_)で構成される「スネークケース」(例:
sales_data
) がよく用いられます。
実践!Google ColaboratoryでPostgreSQL環境を構築する
実際にSQLを動かしてみるために、Google Colaboratory上にPostgreSQLの環境を簡単に構築する方法を紹介します。
-
Google Colaboratoryで新しいノートブックを開く
まずはGoogle Colaboratoryにアクセスし、ノートブックを新規作成します。 -
PostgreSQLのインストールとサービス起動
以下のコマンドをセルに貼り付けて実行します。これにより、PostgreSQLのインストールとサービスの起動が行われます。# パッケージリストを更新 !sudo apt-get -y -qq update # PostgreSQLをインストール !sudo apt-get -y -qq install postgresql # PostgreSQLのサービスを起動 !sudo service postgresql start
-
インストールの確認
記事執筆時点ではPostgreSQL 14がインストールされますが、環境によってバージョンは変わる可能性があります。以下のコマンドで確認できます。!sudo -u postgres psql --version
これでSQLを実行する準備が整いました。基本的な実行構文は以下の形式になります。実際の使い方は次ページの「SQL DDL」から説明していきます。
!sudo -u postgres psql -U ユーザー名 -d データベース名 -c '実行したいSQL文'
本サイトで使用するGoogle Colaboratoryのサンプルコードは、こちらからノートブックファイル(.ipynb)をダウンロードできます。