Presentation is loading. Please wait.

Presentation is loading. Please wait.

3-6.インデックスについて 3-7.関数と併用されることの 多いMySQLコマンド

Similar presentations


Presentation on theme: "3-6.インデックスについて 3-7.関数と併用されることの 多いMySQLコマンド"— Presentation transcript:

1 3-6.インデックスについて 3-7.関数と併用されることの 多いMySQLコマンド
2004年 6月3日(木) 01T6074X 茂木啓悟

2 3-6.インデックスについて レコードが非常に多くなりデータの検索に時間がかかる場合、カラムにインデックス(索引)をつけることによって検索速度を向上させることができる。

3 インデックスの作成と確認 1.テーブル作成時に指定する方法
mysql> create table MEMBERS(ID_C int not null -> primary key,NAME_C varchar(20)   > not null,ADDRESS_C varchar(32), -> index ID_INDX(ID_C));

4 2.既存のテーブルにあるカラムに   インデックスを作成する方法 mysql> create index NAME_INDX on -> MEMBERS(NAME_C);

5 3.作成済みのテーブルに変更を加える方法 mysql> alter table MEMBERS add index -> NAME_INDX(NAME_C);   いずれの場合でもインデックス名が指定されていなければ,インデックスのカラム名がそのままインデックス名になる。

6 mysql> show index from MEMBERS;
インデックスの確認 mysql> show index from MEMBERS;    Key_nameのカラムにインデックスの    名前が表示される.

7 インデックスの削除   インデックスを削除する場合には,   drop indexコマンドを使う。 mysql> drop index NAME_INDX -> on MEMBERS;

8 3-7.関数と併用されることの多いMySQLコマンド
having句 ある条件で抽出された結果セットに対して、さらに条件を加えて絞り込みを行う場合に用いる。   関数で処理されたあとに結果セットを絞り込むときにwhereは使えないのでhavingが有効。

9 mysql> select ID_C,NAME_C,AGE_C from
-> FRIENDS_T2 where ID_C > 5 -> having AGE_C > 40 order by ID_C; -> having NAME_C like “友%”;

10 グルーピング:group by 指定のカラムにある全データから重複するものをまとめて表示させる。
mysql> select BLOOD_C from > FRIENDS_T2 group by BLOOD_C; 上記のコマンドはselect distinctと同じ結果セットを得ることになる。

11 mysql> select * from FRIENDS_T2
  select distinctとの違いは、1つのカラムのグループ化を行った後、他のカラムのデータも表示できる。 mysql> select * from FRIENDS_T2        -> group by BLOOD_C;


Download ppt "3-6.インデックスについて 3-7.関数と併用されることの 多いMySQLコマンド"

Similar presentations


Ads by Google