複数の条件でアクセス クエリを作成しようとしています。クエリ対象のテーブルは「tblVendor」で、以下に示すように、ベンダーの出荷データに関する情報が含まれています。
2 番目のテーブルは「tblSchedule」で、各ベンダーの締め切り日のスケジュールが含まれています。この表には、データ分析の締め切り日があります。
ベンダーごとに、ShipDate >= CutoffDate を持つレコードを選択する必要があります。ここのデータには示されていませんが、複数のベンダーが同じ CutoffDate を持っている可能性があります。「tblCutoffdate」の少数のレコードについては、次のようなクエリを作成できます。
SELECT tblVendors.ShipmentId, tblVendors.VendorNumber, tblVendors.VendorName,
tblVendors.Units, tblVendors.ShipDate
FROM tblVendors INNER JOIN tblCutoffDate ON tblVendors.VendorNumber =
tblCutoffDate.VendorNumber
WHERE (((tblVendors.VendorNumber) In (SELECT VendorNumber FROM [tblCutoffDate] WHERE
[tblCutoffDate].[CutoffDate] = #2/1/2014#)) AND ((tblVendors.ShipDate)>=#2/1/2014#)) OR
(((tblVendors.VendorNumber) In (SELECT VendorNumber FROM [tblCutoffDate] WHERE
[tblCutoffDate].[CutoffDate] = #4/1/2014#)) AND ((tblVendors.ShipDate)>=#4/1/2014#));
必要に応じて、クエリは次のような結果を返します。
今私が懸念しているのは、「tblCutoffDate」に多くのレコードが追加されているため、クエリで日付をハードコーディングするのが難しくなっているということです。ハードコーディングせずに上記の SQL ステートメントを記述するより良い方法はありますか?