我有一个ms访问数据库,其中包含两个我关注的表。
Table 1
...[field 1] "Name" text
...[field 2] "IDBorn" number
...[field 3] "IDDied" number
Table 2
...[field 1] "IDDate" number
...[field 2] "dtISO" text of date
" IDBorn"和" IDDied"与" IDDate"
有关我的问题。我可以查询(在一个查询中)获取
...[field 1] "Name" text
...[field 2] "Born On" text of born on date
...[field 3] "Died On" text of died on date
我无法获得成功的UNION查询。这是要走的路吗?
答案 0 :(得分:1)
您需要为每个字段创建两个内部联接
select Name, T1A.IDBorn, T1B.IDDied
from [Table 2] T2
inner join [Table 1] T1A
on T2.IDDate = T1A.IDBorn
inner join [Table 1] T1B
on T2.IDDate = T1B.IDDied
希望这可以帮到你
答案 1 :(得分:0)
虽然这是一个不好的例子,你想在主表中为某些数据设置一个查找表(你应该只使用日期字段),JorgeLondoño上面的答案是查询它的正确方法。
您也可以在设计视图中打开表格。选择“IDBorn”字段单击属性中的“查找”选项卡。
显示控制=“组合框”。
行源类型=“表/查询”。
行来源=
SELECT T1A.IDBorn,Name
FROM [Table 2] T2 INNER JOIN [Table 1] T1A on T2.IDDate = T1A.IDBorn
Bound column =“1”
列数=“2”
列宽=“0; 20”
这将显示实际值而不是查找值。然后,根据您对表的处理情况,每次要从表中获取数据时,可能不必执行此查询。