Database 跨表的MS访问年龄计算

Database 跨表的MS访问年龄计算,database,expression,builder,Database,Expression,Builder,我正在编辑一个数据库模板,以便跟踪同一个人不同年龄段的患者测试差异 我重新调整学生数据库模板,以利用已创建的表单和宏 我有一个病人表,其中存储了在初次摄入时收集的所有数据:姓名、出生日期、出生日期等;还有一个表,用于跟踪就诊期间的测试分数,其中包括:姓名、就诊日期、DOV和分数信息。这些是成对的,因此我可以从一名患者那里提取信息,并查看他们在就诊中的得分 我现在需要做的是创建一个查询,在那里我可以计算他们参加测试时的年龄 为此,我使用expression builder并输入计算:[访问日期]-

我正在编辑一个数据库模板,以便跟踪同一个人不同年龄段的患者测试差异

我重新调整学生数据库模板,以利用已创建的表单和宏

我有一个病人表,其中存储了在初次摄入时收集的所有数据:姓名、出生日期、出生日期等;还有一个表,用于跟踪就诊期间的测试分数,其中包括:姓名、就诊日期、DOV和分数信息。这些是成对的,因此我可以从一名患者那里提取信息,并查看他们在就诊中的得分

我现在需要做的是创建一个查询,在那里我可以计算他们参加测试时的年龄

为此,我使用expression builder并输入计算:[访问日期]-[DOB]/365

仅当我在患者就诊表的新列中重新输入DOB时,这才适用于计算年龄

我试过使用DateDiff和[患者]![DOB]从另一个表中调用数据,但我得到了相同的错误

计算年龄:[患者就诊]![就诊日期]-[患者]![DOB]/365 计算年龄:DateDiffyyyy,[患者]![DOB],[Patient Visition]![探访日期]

两者都会抛出错误:输入参数值“Patients!”!多比 如果我输入一个日期,所有数据点和患者的计算结果与我输入的DOB相同

如何让Access知道我需要它来计算同一患者的DOB就诊日期

?:我是否需要为患者ID创建一个查找表以与DOB匹配,然后使用该字段进行计算

如果表达式有问题,我可以纠正,那将是理想的。如果不是,那么,在不必在初次摄取时和每次就诊时多次手动输入患者DOB的情况下,计算就诊时年龄的最佳方法是什么

先谢谢你

我找到了解决办法

我用错了“查询”。我需要在创建查询时将该表添加到查询中,而不是强迫它识别另一个表。 即。: 1\选择“查询设计” 2_u选择通过表格输入所需信息的表格 3_u使用`

Patient Name: IIf(IsNull([Last Name]),IIf(IsNull([First Name]),[First Name]),IIf(IsNull([First Name]),[Last Name],[First Name] & " " & [Last Name]))
` 对于第一个字段和

病人就诊*

对于第二个字段。通过添加患者就诊。*查询将表中的所有字段添加到查询中

第三个字段我从Patients表中选择了DOB,因为我最初在布局中选择了这两个表,所以可以选择该字段

我现在可以使用原版了

计算:[就诊日期]-[DOB]/365

对于年龄计算,无任何错误。我在“属性>格式>修复”下完成了格式设置