構造化照会言語はすべての現代のリレーショナルデータベースの背後にある
SQL(Structured Query Language)はデータベースの言語です。 Access、FileMaker Pro、Microsoft SQL Server、Oracleなどの現代のリレーショナルデータベースはすべて、SQLを基本ビルディングブロックとして使用しています。 実際には、データベース自体とやりとりできる唯一の方法です。 データ入力と操作機能を提供するすべてのグラフィカルユーザーインターフェイスは、SQLトランスレータにすぎません。 彼らはあなたがグラフィカルに実行するアクションを取って、それらをデータベースが理解できるSQLコマンドに変換します。
SQLは英語に似ています
この時点で、あなたはプログラマではないと思うかもしれませんし、プログラミング言語を学ぶことは確かにあなたの路地ではありません。 幸いなことに、SQLは、その核心で、単純な言語です。 限られた数のコマンドがあり、それらのコマンドは非常に読みやすく、英語の文のようにほとんど構造化されています。
データベースの紹介
SQLを理解するには、データベースの仕組みを基本的に理解することが重要です。 「テーブル」、「関係」、「クエリ」などの用語に慣れていれば、すぐに耕すことができます。 そうでない場合は、移動する前に「 データベースの基礎」の記事をお読みください。
例を見てみましょう。 コンビニエンスストアの在庫を保持するように設計された単純なデータベースがあるとします。 データベース内のテーブルの1つに、各アイテムを識別する固有の在庫番号で索引付けされた棚のアイテムの価格が含まれている場合があります。 おそらくそのテーブルに「価格」のような単純な名前を付けます。
おそらく、$ 25以上の値段をつけたアイテムを店舗から取り除きたい場合は、これらのアイテムすべてのリストをデータベースに照会します。ここにSQLが入ります。
あなたの最初のSQLクエリ
この情報を取得するために必要なSQLステートメントに入る前に、簡単な英語で質問を表現してみましょう。 「価格が$ 25を超える価格表からすべての在庫番号を選択したい」というのは簡単な英語で書かれた非常にシンプルな要求ですが、SQLではほとんど同じです。 対応するSQL文は次のとおりです。
SELECT StockNumber
FROM価格
どこより価格> 5
これほど簡単です! 上記のステートメントを大声で読んだら、最後の段落で提出した英語の質問に非常に似ていることがわかります。
SQL文の解釈
さあ、別の例を試してみましょう。 しかし今回は、逆にやります。 まず、SQLステートメントを提供し、それを簡単な英語で説明できるかどうかを見てみましょう。
SELECT価格
FROM価格
在庫番号= 3006
だから、この声明はどう思いますか? そうです、アイテム3006のデータベースから価格を取得します。
この時点で、私たちの議論から取り除かなければならない簡単な教訓があります.SQLは英語のようです。 SQL文をどのように構築するか心配しないでください。 私たちは残りのシリーズでそれについて説明します。 SQLが最初に現れるほど威圧的ではないことに気付くだけです。
SQLステートメントの範囲
SQLは広範なステートメントを提供します。その中でSELECTは単なるステートメントです。 その他の一般的なSQL文の例をいくつか示します。
- SQL INSERTおよびSQL DELETE:テーブルからレコードを挿入または削除する
- SQL UPDATE:テーブル内のレコードを変更する
- SQL CREATEおよびSQL DROP:テーブルの作成または削除
これらのSQL文に加えて、SQL節を使用することができます。その中には、前の例で使用したWHERE節を使用できます。 これらの句は、処理するデータの種類を絞り込む役割を果たします。 WHERE句に加えて、他によく使用される節があります。
- ANDまたはOR:複数の条件を組み合わせてSQL文を絞り込む
- LIKE:ワイルドカードを使用して値を類似の値と比較する
- ORDER BY:データを昇順または降順にソートする
SQLの詳細な探索に興味がある方は、 SQL FundamentalsはSQLのコンポーネントとアスペクトを詳しく解説した複数パートのチュートリアルです。