データベース言語とは何か
データベースを使用したシステムを構築する場合、データベースに対して様々な操作をする必要があります。例えば、データベースそのものを作成(定義)する。テーブルを作成(定義)する。テーブルにデータを格納する。テーブルのデータを取り出す。テーブルのデータを更新、削除する。それ以外にも多くの操作が必要になります。それらの操作をするのがデータベース言語です
データベース言語の種類
データベース言語は、以下の3種類に大別されます
・データを定義するDDL(Data Definition Language)言語
・データを操作するDМL(Data Manipulation Language)言語
・データを制御するDCL(Data Control Language)言語
DDL、DML、DCLの種類は以下の通りです
DDLのCREATE文はテーブルを作成する最も基本的なSQLです。それ以外にインデックスやビューの作成もCREATE文になります
DMLのSELECT文はSQLの代表です。データを取り出すための機能が豊富です。例えば、必要な項目だけを取り出す。検索条件を指定してデータを絞り込む。取り出したデータの合計や平均を計算する。データを並べ替える。(ソート)などなど。もちろんデータを挿入する。データを更新する。データを削除することも可能です
DCLはデータ制御ということで、更新したデータを確定させるCOMMIT。更新したデータをもとに戻すROLLBACKなどがあります。なぜこのような機能があるかというと、ある理由で処理をなかったことにしたり、更新ログの領域を確保するために、一定の間隔でデータを確定させる必要があったりするからです。詳細はトランザクション障害を参照ください
一般的にSQLというと、DMLを指すことが多いです。
DMLの中でもデータを取得するSELECT文が90%以上を占めると言われています。
チューニングの対象もほとんどがSELECT文に起因することが多いです