MySQL インデックスの確立は、MySQL の効率的な操作にとって非常に重要です。インデックスにより、MySQL の検索速度が大幅に向上します。 例え話で言えば、適切な設計とインデックスを備えた MySQL がランボルギーニだとすると、インデックスのない MySQL は人力三輪車です。 インデックスは、単一列インデックスと複合インデックスに分けられます。単一列インデックスは、1 つの列のみを含むインデックスです。テーブルには複数の単一列インデックスを設定できますが、これらは複合インデックスではありません。複合インデックス。つまり、インデックスには複数の列が含まれます。 インデックスを作成するときは、インデックスが SQL クエリ ステートメント (通常は WHERE 句の条件として) に適用されていることを確認する必要があります。 実際、インデックスは主キーとインデックス フィールドを格納し、エンティティ テーブルのレコードを指すテーブルでもあります。 上記ではインデックスを使用する利点について説明しましたが、インデックスを過度に使用すると悪用につながります。したがって、インデックスにも欠点があります。インデックスによってクエリ速度は大幅に向上しますが、INSERT、UPDATE、DELETE などのテーブル更新の速度も低下します。テーブルを更新する場合、MySQL はデータだけでなくインデックス ファイルも保存する必要があるためです。 インデックスを構築すると、インデックス ファイル用のディスク領域が消費されます。 通常のインデックス インデックスを作成 これは最も基本的なインデックスであり、制限はありません。以下の方法で作成できます。 mytable(username(length))にインデックスindexNameを作成します。 CHAR または VARCHAR 型の場合、長さはフィールドの実際の長さより短くてもかまいません。BLOB または TEXT 型の場合は、長さを指定する必要があります。 テーブル構造を変更する ALTER mytable ADD INDEX [indexName] ON (username(length)) テーブル作成時に直接指定する テーブルmytableを作成します( ID INT NULLではありません、 ユーザー名 VARCHAR(16) NOT NULL, INDEX [インデックス名] (ユーザー名(長さ)) ); インデックスを削除する構文 mytable のインデックス [indexName] を削除します。 ユニークインデックス これは、インデックス列の値が一意である必要があることを除いて、以前の通常のインデックスと似ていますが、null 値が許可されます。複合インデックスの場合、列の値の組み合わせは一意である必要があります。以下の方法で作成できます。 インデックスを作成 mytable(ユーザー名(長さ))に一意のインデックスindexNameを作成します。 テーブル構造を変更する ALTER mytable ADD UNIQUE [indexName] ON (username(length)) テーブル作成時に直接指定する テーブルmytableを作成します( ID INT NULLではありません、 ユーザー名 VARCHAR(16) NOT NULL, 一意の [indexName] (ユーザー名(長さ)) ); ALTER コマンドを使用したインデックスの追加と削除 テーブルにインデックスを追加する方法は 4 つあります。
次の例では、テーブルにインデックスを追加します。 mysql> ALTER TABLE testalter_tbl ADD INDEX (c); ALTER コマンドの DROP 句を使用してインデックスを削除することもできます。インデックスを削除するには、次の例を試してください。 mysql> ALTER TABLE testalter_tbl DROP INDEX (c); ALTERコマンドを使用して主キーを追加および削除する 主キーは 1 つの列にのみ適用できます。主キー インデックスを追加するときは、主キーがデフォルトで空でない (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 を削除します。 キーを削除する場合は PRIMARY KEY のみを指定する必要がありますが、インデックスを削除する場合はインデックス名を知っておく必要があります。 インデックス情報を表示する SHOW INDEX コマンドを使用して、テーブル内の関連するインデックス情報を一覧表示できます。 \G を追加することで出力をフォーマットできます。 次の例を試してください。 mysql> SHOW INDEX FROM table_name\G ........ 以上がMySQLインデックスの詳細についての簡単な紹介です。MySQLインデックスの詳細については、123WORDPRESS.COMの他の関連記事にも注目してください。 以下もご興味があるかもしれません:
|
<<: MySQL スケジュール バックアップ ソリューション (Linux crontab を使用)
>>: React NativeのScrollViewプルダウンリフレッシュ効果
目次1. シグナルリスト1.1. リアルタイム信号と非リアルタイム信号1.2 信号ステータス1.3 ...
基本的な環境設定まずはご自身でドメイン名とサーバーを購入してくださいクラウドサーバーECSに基づいて...
css-vars-ポニーフィルCSS 変数を使用して Web ページのスキニングを実現すると、互換...
1. ローカルyumソースを設定する1. ISOイメージをマウントする マウント -o loop /...
<br />少し前に、ビジネス上の必要性から、ラップトップに Souba をインストール...
この記事では、MySQL 8.0.20のインストールと設定方法についての詳細なチュートリアルを参考ま...
キープアライブとは何ですか?通常の開発では、コンポーネントによっては複数回初期化する必要のないものも...
<br />このセクションでは、XHTML でテキストの書式設定と特殊文字を実装する方法...
この記事では、シームレスなスクロールを実現するためのフレックスレイアウトのサンプルコードを主に紹介し...
ビジネスシナリオ: 異なるデータベース内のテーブルをクエリするたとえば、関連付けられるテーブルは、マ...
最初のタイプ: 完全な CSS コントロール、レイヤーフローティング (ログインページに適しています...
序文: Vue プロジェクトで現在のマウスの座標を取得するにはどうすればよいでしょうか。ここで共有す...
HTTP ステータス コードステータス コードは 3 桁の数字と理由フレーズ (最も一般的なもの: ...
重複したフォーム送信は、マルチユーザー Web アプリケーションで最も一般的で厄介な問題です。重複送...
この記事の例では、Vueモバイル端末で指のスライド効果を実現するための具体的なコードを紹介します。具...