問題タブ [indexed-view]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql-server - 必要な特定の結果に対してインデックス付きビューを作成することはできますか?
次の結果を返すインデックス付きビューを作成することは可能ですか:-
- ID | 場所の名前 | その場所のエイリアス
- 1 | いくつかの場所 | エイリアス 1、エイリアス 2、エイリアス 3
- 2 | 別の場所 | ヌル
- 3 | まだ別の場所 | ヌル
- 4 | 最後の場所 | エイリアス
私のテーブル構造は
ロケーションテーブル
- LocationId INTEGER
- 名前 NVARCHAR(100)
LocationAlias テーブル
- LocationAliasId INTEGER
- LocationId INTEGER
- 名前 NVARCHAR(100)
そしてもちろん、ロケーションは 0<->多くのロケーション エイリアスを持つことができます
それで、これはできますか?
sql-server - 全文検索用のSQLServerインデックスビュー
MicrosoftSQLServerの全文検索機能を使用したい。
City、Country、Departmentなどの他のテーブルを参照するテーブルClientがある場合は、非正規化データを保持する別のテーブルを作成して、フルテキストインデックスを作成するか、すべての外部テーブルのダミー値(たとえば、キー-1)を使用して、クライアントテーブルのNULLを対応するダミー値に置き換え、インデックス付きビューを作成します(これらのダミーエントリは、インデックス付きビューと'innerの使用によるものです。 'left join'の代わりにjoin')してから、このインデックスビューにフルテキストインデックスを作成しますか?
後者の場合、クライアント、または外部テーブル(City、Country、Departmentなど)でレコードが変更されるたびに、「非正規化」テーブルにデータが入力されることを心配する必要はありません。
または、上記のどれでもない場合は、いくつかの新しいアイデアを使用することもできます:)
sql-server - SQL Server Create View Index には、distinct または group by が含まれています
SQL サーバー データベースに住所データのテーブルがあります。このテーブルは正規化されていないため、繰り返される多くのアドレスが含まれています。一意の各アドレスは Id フィールドで識別できます (これらの ID はテーブル内で頻繁に繰り返されます)。
そこで、元のテーブルから Select Distinct(AddressId) を使用して、すべての一意のアドレスを抽出するビューをテーブルに作成しました。
検索速度を上げるために、このビューにインデックスを作成したいと思いますが、SQL サーバーでは、ビューに個別またはグループ化が含まれているため、ビューにインデックスを作成できません (両方を試してみました。インデックスを作成させてください)
誰かがこれについて何か解決策を持っていますか? またはこれを行う別の方法へのビュー。
住所のキーワードに基づいてこのビューをクエリし、一致する数に基づいてビューを返す必要があります。ビューのフィールドにインデックスを付けることで、このクエリを高速化しようとしています。
SQL Server 2008
私の質問です....
AddressLookup で列を取り出すと、インデックスを追加できます
乾杯
sql-server - Sql Server 2008 でビューのインデックスを作成すると、元のデータが実際に複製されますか?
(Sql Server 2008 で) インデックス付きビューを作成すると、必要なすべてのデータをソース テーブルから別の新しいテーブルにコピーすることになりますか? または、このビューを表すために、いくつかの小さなポインター/インデックスのみが保存されますか?
sql-server - SQL Server では、実際のテーブルの代わりにインデックス付きビューを使用する必要があるのはいつですか?
SQL Server では、ビューにインデックスを作成できることを知っています。その後、ビューは基になるテーブルからデータを保存します。次に、ビューを照会できます。しかし、なぜテーブルの代わりにビューを使用する必要があるのでしょうか?
sql-server - SQL Server で具体化されたビューを作成する方法は?
私はデータ ウェアハウスを設計しようとしていますが、マテリアライズド ビューについて聞いたことがあります。実際にビューを作成したいのですが、ベーステーブルが変更されると自動的に更新されるはずです。誰でもクエリの例で説明できますか?
sql-server-2005 - 索引付けされていないデータに対する最速の SQL クエリ
SQL Server 2005 データベースに対していくつかのカスタム レポートを作成しています。データベースは、私たちが実行するサードパーティの管理アプリケーションに属しています。私が取得しているデータは、サイトの主な目的に含まれていないため、タイムスタンプ列を除いて、データの大部分はインデックス化されていません。今のところ、関連するテーブルは 1 つだけです。約 7 億行のテーブルです。したがって、50 行のみを返すクエリを実行すると、700mil すべてをポーリングする必要があります。
私はこれをスピードアップしようとしていますが、WHERE 句に追加するすべての列にインデックスを付けたくありません。多くのインデックスを追加すると、速度が大幅に向上するかどうかはわかりません (または、違う?)。したがって、テーブルに新しいインデックスを追加できなかった場合のベスト プラクティスはどうなるか知りたいです。
ストアド プロシージャは最適ではないようです。インデックス付きビューが最良のアイデアでしょうか? 考え?
テーブル スキーマは次のとおりです。
サンプルクエリは次のとおりです。
たぶん、クエリは最悪です... 4.5 分で 53 行が返されます。
sql - インデックス付きビューの作成
インデックス付きビューを作成しようとすると、「datepartが非決定論的値を返すか、システム定義の決定論的関数を使用するか、ユーザー定義関数を作成して決定論的値を返す」というエラーが発生します。ビューにインデックスを作成しようとすると、このエラーが発生します。
クエリは
このdate_timeはvarchar(30)タイプです。この問題を克服するための解決策を教えてください。
sql - ビューへのインデックスの追加中にエラーが発生しました
次のコードを使用してビューを作成しました
今私が使用するとき:
エラーが発生しました:
選択リストがCOUNT_BIG()の正しい使用法を使用していないため、インデックスを作成できません。COUNT_BIG(*)を選択に追加することを検討してください。
この問題の解決にご協力ください。
sql - ユニオンをシミュレートしてインデックス付きビューを作成する
SQL Server 2005には次のテーブルスキーマがあり、構造の変更を永続的にできるようになるまで、作成している一部のクエリのインデックス付きビューに非正規化したいと思います。
表は次のとおりです
採点者が採点者1、採点者2、または採点者3のいずれかである、採点者/採点/ドキュメントの組み合わせごとに1行のテーブルが必要です。
私が書いたビューはUNIONを使用しているため、インデックスを作成しません。
問題は-SQLがユニオンでビューにインデックスを付けることができない...