主キーの整数IDを持つ典型的なテーブルと、行の作成時に記録するDateTime列があります。理論的には、Id列の順序は常にDateTime列の順序と同じでなければなりません。私のアプリケーションはORDER BY CreateDateTime DESC
で、CreateDateTimeカラムのインデックスを追加しようとしていましたが、プライマリキーのクラスタードインデックスが同じものを達成するはずですが、意味的に正しいわけではありませんが、別のインデックスを作成します。とにかくCreateDateTimeインデックスを追加しますか?代わりにLastUpdatedDateTime
列の場合(インデックスの更新が随時行われる)インデックス行IDと行DateTime
答えて
"理論的には..."実践が理論と一致しない場合はどうですか?
場合は、その日付フィールドでインデックスと注文を作成します。 いいえの場合は、主キーを使用します。
日付範囲の検索を実行しない場合は、主キーでインデックスと注文を追加しないでください。私はセマンティクスは、あなたが行が挿入された順序でリストされている点でまだ正しいと主張したいと思います。 PKはDateTimeではなくあなたのためにその注文を追跡しています。
これは、CreateDateTimeは、行が挿入されたときに常にgetdate()またはcomparableを使用していることを前提としています。あなたが他の方法で作成されていることが予想される場合、私はCreateDateTimeのインデックスに行き、Order By節でそれを使用します。
私は、datetime列にクラスタード・インデックスを持ついくつかのシナリオを持っていました。これは、データが常に増加している(ページ上のホットスポットを意味するが、ページが分割されていない)ため、ほとんどのクエリは日付範囲ではないため、他のデータではであるため、これは、エンティティではなく、大量のトランザクションデータに対するものでした。
特に、datetime列に基づいたテーブルに対して多くのクエリを実行する予定ですか?そうでなければ、私はあなたがインデックスから恩恵を受けるとは思わない - クラスタ化されたキーとして実際の識別子に固執する。最後に更新された列について言えば、そのようなインデックスを使用するクエリの割合はいくらですか?それはまったくあなたを得ることができるようには思われません(ただし、データが更新される頻度に応じて多くの費用がかかります)。
まさにどのようなエンティティについて話していますか?これらのユーザー、救急車、バービー人形、フォーラムの投稿、火山、何か他の人ですか? 1日、1週間、1か月に何行追加しますか?どのような種類のクエリを実行していますか?ボリュームの種類とクエリの種類がわかっていると、インデックス戦略を決定する上で大きな道のりがあります。
IDを使用してください。タイムゾーンの変更をより適切に考慮してください。
- 1. ListViewの行IDと位置インデックスの混乱
- 2. XAML - オートメーションIDへのセルの行と列のインデックスのバインド
- 3. datetime = dateの行を選択してインデックスを使用します。
- 4. heightForRowAtIndexPathの行インデックスがcellForRowAtIndexPathの行インデックス
- 5. インデックス作成と実行プラン
- 6. WP7スターリングデータベースのDateTimeインデックス
- 7. MySQL datetimeと前回の行の比較
- 8. インデックス行列Matlab
- 9. インデックスとDateTimeによるRavenDBクエリ
- 10. 注意:未定義のインデックス:3行目と128行目のC:\ xampp \ htdocs \ login.phpのID
- 11. scipyスパース行列インデックス
- 12. 決定行インデックスRで
- 13. jqGridでインデックス行をクリック
- 14. DataTableで行インデックスを検索
- 15. TableLayoutのテーブル行のインデックス
- 16. Rの行列のインデックス値?
- 17. jQueryの行の変更とID
- 18. データベース内の行間のDateTimeの差
- 19. mysql datetime行に日を追加する
- 20. C#のDateTimeの奇妙な行動
- 21. log4net print各行のDateTime/calling class/function
- 22. tempテーブルのストアドプロシージャでdatetimeの行をソート
- 23. IDでフィルタクエリを行う
- 24. テーブル行のIDを渡す
- 25. 行IDの最大値は?
- 26. 行列の最大値の行と列のインデックスを見つける
- 27. 複数のテーブルとインデックス付きの行との比較
- 28. 行と列をループしているときのインデックス/マッチ
- 29. 実行時にDataViewの行のインデックスを渡す方法は?
- 30. numpy行列の最大列値の行インデックスの検索
詳細と解答を説明する必要があります。 – sabbahillel