将几个表组合在一起,以在一个表中显示计划编号,活动编号,日期/时间工作日,资源编号和$ Rate。我试图仅为每个planno返回记录,其中该计划中的每条记录的费率都高于$ 15.00 (费率由resno号确定)。
所以,
P000 R100 $10.00
P000 R100 $10.00
P000 R101 $20.00
不会返回任何内容。 但是,
P102 R102 $15.00
P102 R103 $17.50
P102 R03 $17.50
将返回所有这三行。 这是我的代码。这显然是一个嵌套查询,也许是一个自我加入。但是,我似乎无法得到它。任何帮助表示赞赏。
SELECT EventPlan.planno
,EventPlan.activity
,EventPlan.workdate
,EventPlanLine.resno
,Resource.Rate
FROM EventPlan
INNER JOIN (
Resource INNER JOIN EventPlanLine ON Resource.resno = EventPlanLine.resno
) ON (EventPlan.planno = EventPlanLine.planno)
WHERE (
((Month([EventPlan].[workdate])) = 12)
AND ((Year([EventPlan].[workdate])) = 2013)
);
EventPlan
planno eventno workdate activity empno
P100 E100 25-Oct-13 Operation E102
P101 E104 03-Dec-13 Operation E100
P102 E105 05-Dec-13 Operation E102
资源
resno resname rate
R100 attendant $10.00
R101 police $15.00
R102 usher $10.00
R104 janitor $15.00
EventPlanLine
planno lineno timestart timeend number locno resno
P104 2 18:00 22:00 4 L100 R104
P104 1 18:00 22:00 4 L101 R104
P105 2 18:00 22:00 4 L100 R104
P105 1 18:00 22:00 4 L101 R104
我相信我提供的行,应该返回EventPlanLine中的所有四行,因为 plannos的所有费率都高于$ 15.00