問題タブ [scd]

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.

0 投票する
0 に答える
435 参照

mysql - MySQL で SCD タイプ 2 テーブルをクエリする

次の表を想像してください。

パラメータとして送信された日付に従って、正しいタイプを返すビューを構築する方法があるかどうかを知りたいです。例えば:

SELECT Type WHERE date_to_analyse = '21/06/2010''Retail'
SELECT Type WHERE date_to_analyse = '18/06/2012を返す必要があります' 'Corp' を返す必要があります

Date_to_analyse はテーブルの列ではないため、ストアド プロシージャの使用を避けたいと考えています。
私の考えは、次のクエリを使用する代わりに、クエリを「クリーン」にすることです

これは可能ですか?

ありがとう

0 投票する
0 に答える
716 参照

sql-server - SSIS SCD 変換の開始日と終了日が同じ - どうしてですか?

ETL に問題があります。SCD 1 列と SCD 2 列を含むディメンション テーブルがあります。これらを SCD 変換Changing AttributeHistorical Attributeそれぞれ と として正しくマッピングしました。

次に、Historical Attribute Options ページで をチェックしUse start and end dates to identify current and expired records、ValidFrom 列を として入力し、ValidTo 列を として入力Start date columnしましたEnd date column

私が理解しているように、これは、挿入されたレコードには現在の日時値の ValidFrom が与えられ、その ValidTo 列はそのままであることを意味するはずですNULL。また、既に存在するが古いレコードの場合、その ValidTo は現在の日時値になります。

ただし、インポートされるすべてのレコードではなく、一部のレコードでは、挿入された最新のレコードが、ValidFrom および ValidTo レコードにまったく同じ日時で挿入されます。クエリでそのレコードが無効であると見なされ、ファクトテーブルの読み込みに影響が及ぶため、これは非常に苦痛になります。

なぜこれが起こっているのか誰でも助けることができますか?

0 投票する
1 に答える
48 参照

sql-server - 繰り返し間隔/履歴の重複を削除

その質問に適切なタイトルを付けるのは少し難しいので、問題を説明しようと思います。Oracle --> JCCを使用したSQL Serverレプリケーションがあります。Oracle でトランザクション ログを読み取り、変更ごとにINSERT + UPDATEの2 つのステートメントを送信するという仕組みです。したがって、そのようなレコードがない場合は、SQL Serverにレコードが既に存在する場合に挿入されます。そのため、最初のINSERTはPK違反のために失敗し、レコードを更新しようとします。

現在、履歴追跡にSQL Server テンポラル テーブルを使用しようとしています。ログを再生する必要があるため、 JCC (レプリケーション) が失敗すると問題が発生します。たとえば、午前 11 時 1 分にレプリケーションが失敗したとします。レコードを見逃さないようにするために、たとえば午前 10 時 45 分から再生する必要があります。通常のテーブルではうまく機能しますが、一時的なテーブルを扱うと、履歴が台無しになり、履歴が不正確になります。

それで、今質問です。これらのレコードを特定してクリーンアップするにはどうすればよいですか?

ここに画像の説明を入力

予想された結果: ここに画像の説明を入力