sql >> データベース >  >> RDS >> Sqlserver

SQL インデックス - char と int の違い

    整数/ID 列は、多くの理由でデータベース テーブルの主キーに使用されることがよくあります。主キー列は一意である必要があり、更新可能であってはならず、実際には無意味であるべきです。これにより、サーバーが次の値を取得し、一意である必要があり、整数は (GUID と比較して) 比較的小さくて使用可能であるため、ID 列は非常に適切な選択になります。

    一部のデータベース アーキテクトは、他のデータ型を主キー値に使用する必要があると主張し、「無意味」および「更新不可」の基準は双方で説得力を持って主張できます。いずれにせよ、整数/識別フィールドは非常に便利であり、多くのデータベース設計者は参照整合性に適したキー値を作成していることに気付きます.

    <オール>
  1. 整数値は文字データ型の値よりも高速に処理されるため、主キーの最適な選択は整数データ型です。文字データ型 (主キーとして) は、処理前に同等の ASCII 値に変換する必要があります。
  2. 主キーとして整数を使用すると、1 ページにより多くのインデックス レコードが存在することになるため、主キーに基づいてレコードを取得する方が高速になります。したがって、合計検索時間は減少します。また、結合も高速になります。ただし、これは、クエリがクラスター化インデックス シークを使用し、スキャンを使用せず、テーブルが 1 つしか使用されていない場合に適用されます。追加の列を持たないスキャンの場合、1 つのデータ ページでより多くの行を意味します。
  3. これが役に立てば幸いです!



    1. PHPを使用してSQLServerで文字列をエスケープする方法は?

    2. JQueryを使用してmySQLに値を挿入する

    3. ゼロ以外の値がある場合の新しい文字列の入力方法

    4. MSSQLをIRIWorkbenchに接続する