2017-04-18 22 views
0

私の慈善のAccessデータベースには、ボランティアのための2つのテーブルを持っています。どんな助けでも大歓迎です。ありがとうMSアクセスのMultiValueクエリ

+0

スキーマを公開してください。ある属性に複数の値がある場合は、1NFではないので、それを修正してから続行する必要があります。 – nicomp

+0

@nicompアクセス多値フィールドは、余分なテーブルを見たり使用したりしたくない人の多対多リレーションシップを処理するための本当に別のテーブルです。彼らは実際に別個のテーブルなので1NFです(Microsoftによると、少なくともhttps://support.office.com/en-us/article/Guide-to-multivalued-fields-7c2fd644-3771-48e4-b6dc-6de9bebbec31を参照)。 ) –

+0

@ErikvonAsmuth私はあなたが何を意味するかを見ます。それらはスーパーダムであり、私はそれらを使用しません:私はちょうど外部キーを作成し、必要に応じてコントロールに移入します。 – nicomp

答えて

0

多値フィールドは面倒ですが、私が知る限り、これはうまくいくはずです(VolunteerGroupsテーブルに2回参加して、そのグループにいる人を確認するためにInterestGroupsの内側にいればあなたはそのグループに含まれていない人物をチェックすることができます)

SELECT VID 
FROM Volunteers 
Inner Join VolunteerGroups As InterestedGroup ON InterestedGroup.ID = InterestedGroupss.Value 
LEFT JOIN VolunteerGroups As ActiveGroup ON ActiveGroup.ID = ActiveGroups.Value 
WHERE ActiveGroup.ID Is Null