SQLとは
SQLはリレーショナルデータベースの操作に特化して開発された言語です。
エスキューエルやシークエルと呼びます。
高度なデータの集計処理などを1行で記述することができます。
SQLは非手続き型言語
JavaScriptやC言語のような汎用言語では、処理を1行ずつ記述して上から下に実行していく手続き型が一般的ですが、SQLは非手続き型言語のため、フローチャートで表せるような手続き型の記述にはなりません。
SQLではデータを集合として扱い、集合をどのように結合・選択・集計するのかを1つのSQL文として記述して処理します。
例えば、売り上げの記録されたデータ集合があったとして、売り上げを集計するSQL文は以下のようになります。
SELECT SUM(price) FROM sales GROUP BY item_id
変数も分岐も繰り返しも使わずに、1行のSQL文でデータを集計できることが分かります。
SQLはDSL(ドメイン固有言語)
SQLのように特定の目的に特化して作られた言語をDSL(ドメイン固有言語)と呼ぶ場合もあります。
用途
データ分析の用途で使ったり、他の手続き型言語と組み合わせてシステム開発で使われたりします。
SQLの学習について
SQLは短い命令で簡単にデータを集計できるため、入門レベルであれば手軽に学べる言語の一つです。Monaca上でSQLを実行するための記事も用意しましたので、是非、試してみてください。
SELECT文
SQLでデータを取得するときに使うデータ操作用の命令がSELECT文です。SELECT文の基本構文SELECT 列名 FROM 表名上記は簡単なSELECT文の例で...
続きを読むWHERE句
SELECT文などでデータを取得する際に、取得行を絞り込む(選択)ときに使うのがWHERE句です。例:金額が100円以上の売り上げを選択して取得するSELECT * FR...
続きを読むORDER BY句
ORDER BY句では取得結果の並び順を指定できます。SELECT文とともに利用します。並び替えに使いたい列を指定しつつ並び順をDESC(降順)かASC(昇順)で指定します。...
続きを読むLIMIT句とOFFSET句
LIMIT句では取得件数を制限できます。データベースにデータが沢山入っているときに全部取得しても困る、というときにはLIMIT句を使いましょう。例えば、全部で1000件のデータがあ...
続きを読むJOIN句
JOIN句は複数の表を連結するための構文です。JOINには色々と種類がありますが、良く使うのはINNER JOINです。JOIN句の基本構文(INNER JOIN)SE...
続きを読むGROUP BY句
GROUP BY句は表を集計するための構文です。列名を指定することで、列の値が同じレコードを集計できます。GROUP BY句の基本構文SELECT 列名A,列名B,,,...
続きを読む