データベース インデックスは、テーブル操作の速度を向上させることを目的としたデータ構造です。高速なランダム検索とレコードへのアクセスの効率的なソートを提供する 1 つ以上の列を使用してインデックスを作成できます。 インデックスを作成するには、SQL クエリを作成するためにどの列を使用するかを検討し、それらの列に 1 つ以上のインデックスを作成する必要があります。 実際、インデックスは、主キーまたはインデックス フィールドへのポインターを保持し、各レコードを実際のテーブル タイプにポイントするテーブルでもあります。 インデックスはユーザーには表示されません。クエリを高速化するためにのみ使用され、データベース検索エンジンによってレコードの検索速度を向上させるために使用されます。 SELECT ステートメントはこれらのテーブルに対して高速に動作するので、INSERT ステートメントと UPDATE ステートメントではインデックスの作成に時間がかかります。その理由は、データを挿入または更新するときに、データベースは挿入または更新されたインデックス値も更新する必要があるためです。 シンプルでユニークなインデックス テーブルに一意のインデックスを作成できます。一意のインデックスとは、2 つの行が同じインデックス値を持つことができないことを意味します。テーブルにインデックスを作成する構文は次のとおりです。 ユニークインデックスを作成する index_name ON テーブル名 (列1、列2、...); 1 つ以上の列を使用してインデックスを作成できます。たとえば、tutorial_author を使用して tutorials_tbl にインデックスを作成できます。 一意のインデックス AUTHOR_INDEX を作成する ON tutorials_tbl (チュートリアル作成者) テーブルに単純なインデックスを作成できます。単純なインデックスを作成するには、UNIQUE キーワードを省略するだけです。単純なインデックスでは、テーブル内に繰り返し値を含めることができます。 インデックス列の値を降順で並べ替えたい場合は、列名の後に予約語 DESC を追加します。 mysql> 一意のインデックス AUTHOR_INDEX を作成します オン tutorials_tbl (tutorial_author DESC) ALTERコマンドを使用してインデックスを追加および削除します テーブルに追加できるインデックスには 4 つの種類があります。
以下は、既存のテーブルにインデックスを追加する例です。 mysql> ALTER TABLE testalter_tbl ADD INDEX (c); インデックスは、DROP 句を指定した ALTER コマンドを使用して削除できます。上記で作成したインデックスを削除するには、次の例を試してください。 mysql> ALTER TABLE testalter_tbl DROP INDEX (c); ALTERコマンドを使用してPRIMARY KEYを追加および削除します。 同様の方法で主キーを追加することもできます。ただし、列内で主キーが適切に使用されるようにするには、NOT NULL の使用を指定する必要があります。 以下は、既存のテーブルに主キーを追加する例です。列を主キーとして追加する前に、列に NOT NULL 属性を追加する必要があります。 mysql> ALTER TABLE testalter_tbl MODIFY i INT NOT NULL; mysql> ALTER TABLE testalter_tbl に PRIMARY KEY (i) を追加します。 次のように ALTER コマンドを使用して主キーを削除できます。 mysql> ALTER TABLE testalter_tbl で PRIMARY KEY を削除します。 主キーではないインデックスを削除するには、インデックス名を指定する必要があります。 インデックス情報を表示する SHOW INDEX コマンドを使用すると、テーブルに関連付けられているすべてのインデックスを一覧表示できます。 出力を垂直にフォーマットします (\G で指定)。これは、出力を要約する長い行を回避するのに役立ちます。 次の例を試してください。 mysql> SHOW INDEX FROM table_name\G ........ 要約する 上記は編集者が紹介したMySQLインデックスです。皆様のお役に立てれば幸いです。ご質問がございましたら、メッセージを残していただければ、編集者がすぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
<<: VUE+Express+MongoDBのフロントエンドとバックエンドの分離によるノートウォールの実現
MySQL ショートリンクの設定方法1. mysql 接続番号ステートメントコマンドを確認します。 ...
みなさんこんにちは、今日はウェブフロントエンドのHTMLを見ていたら、inputタグのtype属性が...
間違いNavicat Premium を使用して MySQL に接続すると、次のエラーが発生します。...
皆さんはこのような状況に遭遇したことがあるでしょうか。プロジェクトや研究開発を行う際に、緊急にファイ...
1. トップレベルの使用法1. cnpmをインストールする npm i -g cnpm --regi...
1. 機能主にコンポーネントの状態を保持したり、再レンダリングを回避したりするために使用されます。 ...
目次導入効果のデモンストレーションは次のとおりです。 MChat コンポーネントのレンダリング: I...
最近、イントラネットポータルを修正していたときに、フィルターを使用する必要がある箇所に遭遇しました。...
カウント(*)成し遂げる1. MyISAM: テーブル内の行の総数をディスク上に保存し、フィルタリン...
ファイル操作に関連するシステムコール作成するint creat(const char *ファイル名,...
1. Flexレイアウトの紹介Flex は Flexible Box の略で、「柔軟なレイアウト」を...
この記事では、vueの大画面表示適応の具体的なコードを参考までに紹介します。具体的な内容は以下のとお...
MySQL には次のログ ファイルがあります。 1: 再実行ログ2: ロールバックログ(元に戻すログ...
1. MySQL ダウンロード アドレス。 http://ftp.ntu.edu.tw/MySQL...
解決: <head> に次のコードを追加します。コードをコピーコードは次のとおりです。 ...