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

クラスター化インデックスは一意である必要がありますか?

    持っていない
    一意ではない列に CI を作成するシナリオにまだ遭遇したことがありません.

    一意でない列に CI を作成するとどうなりますか

    これはパフォーマンスの低下につながりますか?

    一意識別子の追加 確かに、計算と格納のオーバーヘッドがいくらか追加されます。
    このオーバーヘッドが顕著になるかどうかは、いくつかの要因によって異なります。

    • テーブルに含まれるデータの量
    • 挿入率はどのくらいですか。
    • 選択で CI が使用される頻度はどれくらいですか (カバーするインデックスが存在しない場合、ほぼ常に)。

    編集
    Remus がコメントで指摘したように、一意でない CI を作成することが妥当な選択となるユース ケースが存在します。私がこれらのシナリオに遭遇しなかったことは、単に私自身の露出不足または能力不足を示しているだけです (選択肢を選択してください)。



    1. postgres JSON列を処理するデータ型コンバーターを作成することは可能ですか?

    2. 複数のテーブルで同じ値を検索し、結果が得られたテーブルを取得します

    3. MySQLを介したBashスクリプトループ

    4. リストを取得するためのSQL集計関数