MS Access 从两个表中选择
Posted
技术标签:
【中文标题】MS Access 从两个表中选择【英文标题】:MS Access select from two tables 【发布时间】:2019-10-04 23:50:38 【问题描述】:我有 2 个 MS ACCESS 表,想要构建一个返回 3 列的选择; table1.name table1.dept 以及基于 table1 位置列的表 2 中 3 列中的 1 列中的值。 Table1.position 只有 3 个可能的值,每个值决定要使用的 table2 列。
表1
部门名称
表2
部门 posval1 posval2 posval3
我的选择看起来像这个例子。
select a.name, a.dept, b.((if a.pos = "eng", b.posval1) OR (if a.pos = "research", b.posval2) OR (if a.pos = "dv1", b.posval3))
from table1 a, table2 b
where a.dept = b.dept
【问题讨论】:
【参考方案1】:使用 JOIN 子句链接 dept
字段而不是 WHERE。使用嵌套的 IIf() 选择合适的 posval。
SELECT a.name, a.dept,
IIf(pos="eng", posval1, IIf(pos="research", posval2, IIf(pos="dv1", posval3, "None"))) AS Position
FROM table1 a INNER JOIN table2 b ON a.dept = b.dept;
或者使用 Switch() 函数。
SELECT a.name, a.dept,
Switch(pos="eng",posval1, pos="research",posval2, pos="dv1",posval3) AS Position
FROM table1 a INNER JOIN table2 b ON a.dept = b.dept;
【讨论】:
很高兴它解决了您的问题。如果你真的喜欢它,也可以投票。以上是关于MS Access 从两个表中选择的主要内容,如果未能解决你的问题,请参考以下文章