我正在尝试根据表中其他 2 列的值(在本例中为学期和学生名称)在访问查询中组合两列(来自单独的表),例如,如果我有以下内容:
和
我怎样才能进行查询以获得最终结果:
其中 some_data 的第三和第四学期(仅第三和第四)部分已根据 student_name 组合(可能有一些名称在一个表中,但不在另一个表中,等等,尽管这些示例中没有显示) . 目前我对访问查询不是很有经验,所以我很难做到这一点。非常感谢任何帮助,谢谢!
我正在尝试根据表中其他 2 列的值(在本例中为学期和学生名称)在访问查询中组合两列(来自单独的表),例如,如果我有以下内容:
和
我怎样才能进行查询以获得最终结果:
其中 some_data 的第三和第四学期(仅第三和第四)部分已根据 student_name 组合(可能有一些名称在一个表中,但不在另一个表中,等等,尽管这些示例中没有显示) . 目前我对访问查询不是很有经验,所以我很难做到这一点。非常感谢任何帮助,谢谢!
UPDATE Sheet1 INNER JOIN Sheet2
ON Sheet1.semester = Sheet2.semester
And Sheet1.Student_name = Sheet2.Student_name
SET Sheet2.Some_data = Sheet1.Some_Data
Where Sheet1.semester in (3,4)
如果您只想在应用结果之前查看结果,您可以单击Datasheet View
按钮而不是Run
按钮。
如果你想保持你的两个表完好无损并且只有一个视图,你可以这样做:
Select Sheet2.semester
, Sheet2.student_name
, Nz(Sheet2.some_data,Sheet1.some_data)
From Sheet1 INNER JOIN Sheet2
ON Sheet1.semester = Sheet2.semester
And Sheet1.Student_name = Sheet2.Student_name
带有可选where
子句
Where Sheet1.semester in (3,4)
此处的Nz
函数使用来自第一个参数的数据,除非该参数为空,在这种情况下,它使用来自第二个参数的值。
就像是
select semester, student_name, max(some_data) from
(select semester, student_name, some_data from sheet1
union all
select semester, student_name, some_data from sheet2)
group by semester, student_name