コース: データ分析 入門1:基本

基本的なSQL文を学ぶ

コース: データ分析 入門1:基本

基本的なSQL文を学ぶ

データについて学習したり、 データを扱う業務に携わっていると、 SQL という言葉を 耳にすることがあります。 これは、構造化照会言語という意味の Structured Query Language を 略したものです。 SQL は、データベース操作のための 国際標準であり、 データアナリストにとって、 避けて通れないものです。 データベースを始め、 データを扱うツールの多くが SQL 構文に従って、 データを操作しています。 SQL のスキルが上がると、 自分で SQL の命令を作成したり、 データベースを操作する GUI ツールを使用することが できるようになります。 SQL には、ここで学習する 基本的なセレクト文以外にも、 多くの命令があります。 データアナリストとして 活躍するためには、 SQL クエリの基本構造を 理解することは大切です。 今回は、セレクト文の 基本的な SQL 文を 4つ紹介したいと思います。 その前に、Excel を使って よく行う操作を見てください。 シート内の不要な列を削除します。 必要なデータだけを取り出しました。 では、同様の動きを SQL で行う方法を見ていきましょう。 最低減必要な SELECT 文と FROM 文から始めます。 メモ帳で作成しながら説明します。 まずは、SELECT 文です。 SELECT と入力し、 その後に取り出したい フィールド名を列挙します。 並べるフィールド名は、 最終的に Excel のシート上に 残しておく列になります。 不要な列は、削除するのではなく、 SELECT 文に含めないだけです。 まず、受注 ID の SalesOrderID を入力、 次は、受注日の OrderDate、 納期の DueDate、 出荷日の ShipDate、 受注番号の SalesOrderNumber です。 顧客 ID の CustomerID も入力します。 続いて、小計の SubTotal、 税額の TaxAmt、 運賃の Freight、 合計金額の TotalDue を入力します。 SELECT だけでは不十分です。 FROM も必要です。 FROM には、データが格納されている テーブル名やビューを指定します。 まず、Enter キーを押し、 FROM に続き、 販売注文の SalesOrderHeader テーブルを、入力します。 ここまで、いかがでしょうか。 わかりやすい構文ですよね。 SELECT 文には フィールドのリストを与え、 FROM 句には、 どのテーブルやビューから 取り出すかを指定します。 続いて、WHERE について 説明します。 WHERE には、条件を指定します。 次の行に、WHERE と入力します。 ここでは、合計が 5000 以上の 注文のデータだけを表示するようにします。 合計の TotalDue > 5000 と入力します。 これで、販売注文テーブルから、 合計が 5000 より大きい フィールドだけを、 SELECT で 取り出せるようになりました。 もうひとつ重要な命令に ORDER BY があります。 ORDER BY は、 並べ替えの指定をします。 ここでは、日付順に並べ替えたいので、 ORDER BY と入力した後に、 注文日の ORDERDATE と入力します。 複数フィールドで並べ替えるには、 カンマを入力し、 顧客 ID の CustomerID と入力します。 注文日、顧客 ID の順に 並び替わります。 逆に、顧客 ID を先に 並べ替えたい場合もあるでしょう。 その場合は、顧客 ID の CustomerID と 注文日の OrderDate の順を 入れ替えます。 SELECT 文に続き、 アスタリスク(*)を入力します。 アスタリスクは、 すべてのフィールドを表し、 FROM で指定したテーブルから、 すべてのフィールドを 取り出してくることを意味します。 もし、並べ替えも必要であれば、 続けて、ORDER BY と入力します。 命令を入力する順番は重要です。 ORDER BY を入力してから、 WHERE を指定することはできません。 SELECT、FROM、 WHERE、ORDER BY の順に、 入力する必要があります。 SQL は、標準的な構文です。 しかし、使用する データベースアプリケーションにより、 方言のような差異が多少あります。 しかし、SELECT と FROM、 そして ORDER BY と WHERE のような構文には、 一貫性があります。 SELECT と FROM は必須です。 しかし、 WHERE と ORDER BY は 任意です。 また、ORDER BY を入力する前に、 WHERE の指定が必要です。 データがどこに保存されているのか、 どのフィールドが必須なのかといった 重要な情報を教えてくれる SQL 文は、 読めるに越したことはありません。

目次