最も近い日付の一致を使用して2つのデータセットを結合するこんにちは皆さん。
私はユニークな識別子と最も近い日付の一致を使ってJMPの2つのデータセットを結合しようとしています。 私はここで実行するコードをいくつか持っていますし、私が必要としているものにかなり近いですが、多くのものと1つのマッチを維持するのに問題があります。 1つの一意の識別子「EMP_ID_UID」に複数の「取引日」があり、複数の「MED_SCAN_DTIMES」が1つの「取引日」に一致します(取引日は誰かがシフトのために時間を記録した日付で12時間のシフト中に複数の薬を投与する可能性があります。 だから私が必要とするのは "EMP_ID_UID"での最初のマッチと最新の "トランザクション日付"への "MED_SCAN_DTIME"のマッチそしてそれが多くの人を許可するためのものです。単一の「取引日」に一致する「MED_SCAN_DTIME」。今のところ、以下のコードはEMP_ID_UIDと一致しており、多くの取引日を1つのEMP_ID_UIDと一致させることができます。 最も近い日付にも一致しますが、日付の1対1の一致のみを許可します。 それは最も近いマッチだけを保ちます。 必要なものを生成するために結合コードに変更を加えることはできますか?任意の考えや支援は大歓迎です!ありがとうございました!
SELECT *
「ランダムサンプルトライアル」t1より
LEFT OUTER JOIN "関連するユニット組織コードのサブセットのみ" t2
ON t1.EMP_ID_UID = t2.EMP_ID_UIDおよびt1.MED_SCAN_DTIME> t2.TransactionDate
WHERE t1.MED_SCAN_DTIME> t2.TransactionDate
GROUP BY t1.EMP_ID_UID、t1.MED_SCAN_DTIME
abs(t1.MED_SCAN_DTIME-t2.TransactionDate)= min(abs(t1.MED_SCAN_DTIME-t2.TransactionDate))
t1.EMP_ID_UIDによる注文
;
終了する;
私はこれを使ってコード上のポイントを飛ばしました。
https://communities.sas.com/t5/SAS Yelp-Management/Merging-two-tables-by-choosing-the-CLOSEST-dates/mp/191428#M3975
最近の日付の一致を使用して2つのデータセットを結合する詳細を確認するだけです。
あなたが持っているように聞こえます:
IDが一意の識別子であるすべてのプロバイダに対して、1つのクロックイン/クロックアウト時間表
IDとSCAN時間を含む別のテーブル。
最後に、各IDの各クロック入力/出力インターバル中に発生したSCAN時間(またはその数)を確認できるようにする必要があるようです。
それは近いですか?