MS Accessの使用。私はタイトルがあいまいで残念です - 私はちょうどこれがどのタイプの問題であるかを正確には知らないので、私はそれを解決するために2つのテーブルまたはクエリを結合する必要があることを知っています。SQLへのアクセスの質問
Person | Org | JoinDate
-----------------------
123 | abc | 3/2/2011
456 | abc | 4/23/1925
123 | def | 5/12/2011
は私も持っている:
私は(あなただけ一度に一つ組織のメンバーにすることができます)は、特定の日に参加した団体(ID別)各人物を示すOrgHistory
テーブルを持っています
Activities
表:
Person | Activity | ActivityDate
--------------------------------
123 | eat | 3/23/2011
123 | sleep | 6/25/2011
456 | walk | 7/20/1985
私は、人が活動の日ののメンバーだった組織、Activities
に各レコードについて、知りたいです。私はJoinDate
の値を範囲のセットに変換し、適切な間隔にActivityDate
をマッチさせることを含むかもしれないと思っていますが、私はこのケースでクエリをどのように設計するか少し混乱します。個々の値をある範囲に?
既知の量のバケットに複数のJoinDate
の値を保持しようとしていないため、partition()
が機能しないとは思わない。私はこれを約束することはできません
を:あなたベーステーブルに新しいLeaveDateカラムを追加し、同じ人物のためにピリオドが重複しないようにシーケンスキーを追加します(ヒント: 'CHECK'制約が必要です)。** ** once **(@ Banjoe'sクエリはこれに有望です)。 – onedaywhen
+1 @onedaywhen - アクティブ/非アクティブブール値の代わりに休暇日を使用する場合。多くの人々は、会員を見つけるために歴史的に戻る必要はないと考えています。 – JeffO