SQLの最適化とインデックス共通インタビューの質問(インタビューの要約)

1.インデックスされてどのような
インデックスは、たとえば、ディレクトリデータベースを参照します(大量のデータに適用)ディレクトリ上記の辞書の手紙

2.長所と短所インデックスの
利点:速いクエリの速度の
短所:スロー追加や削除、データベースは、インデックスファイルを維持するために同期化するように、とても遅いです

持っているどのようなインデックス3.
共通の主キーユニークな組み合わせを

  1. なぜ速いインデックス付け、検索
    インデックス構造:B +ツリー

5.あなたは通常、どのような状況の下でインデックス化されます
自動的に一意のインデックス作成プライマリキー1.
インデックス作成する必要がありますクエリフィールドとして頻繁2.
3.照会表およびその他の関連分野、外部キー関係インデックス
/ 4スピード複合インデックスの選択、インデックスのより費用対効果の組み合わせ
5.クエリソートフィールド、アクセスへのインデックスをソートフィールドが大幅の選別速度向上する場合
6または統計クエリパケットフィールド。
7.フィルタ選択フィールド条件は、選択されたインデックス付けに適してい

6.とインデックス方法無用知っ
主に使用されているキーインデックスを参照するために、SQLを介してクエリ実行計画が説明

7.複合インデックスは、それを使用し、注文され
整然とした使用しました

8.インデックスは、どのような状況下で失敗するでしょうか?
1.likeの
2.like「%123パーセントではなく、フロント%+
3.使用してキーワード、又は、ヌル,! =

  1. あなたが持っているSQLの最適化を行う方法ですか?
    最初のオープンデータベーススロークエリーログは、比較的低い効率SQLを標的とするクエリは、同定および分析に対応するSQLステートメント
    1表のデザインは、標準であり、標準的なスリーパラダイム場合
    (1)最初のパラダイム:保証アトミック(分割しない)
    各テーブルの主キー(2)第二のパラダイム
    (3)第三のパラダイム(各列は主キーが関連付けられている)
    冗長フィールドデータテーブルの数が多い場合は、データタイプフィールドかどうか、2チェック合理的な
    可能3. VARCHAR代わりチャービルドテーブルデータ型で、絶対値が文字なしに貯蔵することができる
    4.ヌル値、ヌルのデフォルト値を回避するため、数値0は、空の文字列を使用することができる、使用することができます

仕様かどうかを確認するために2番目のSQL文の
(1)キーワードを使用しないでください:!か、で、ないで 、=、<>、 * SELECTを使用することは避けてください
(2)サブクエリを回避しようと、ほとんどのサブクエリは、クエリに参加することができます
(3 )使用されるか、または達成するために労働組合を置き換えるために使用することができる場所
に存在する置換するために使用することができる代わりに使用される)(4

以下のために使用することができるかどうかIII。分析のSQLインデックス
(1)説明SQLクエリの実行プランは、複数の列に集中することで、タイプは全表スキャンではありません
(2)インデックスを使用できるかどうかに見て、主キーの使用を参照するにはその指標
(3)走査線の行数を見て大きくはありません

おすすめ

転載: blog.51cto.com/14464649/2432576