在一个查询Access数据库中从具有不同字段的两个不同表中选择列

Posted

技术标签:

【中文标题】在一个查询Access数据库中从具有不同字段的两个不同表中选择列【英文标题】:Select columns from two different table with different fields in one query Access database 【发布时间】:2014-03-01 12:22:19 【问题描述】:

我的表格tbl_Discount 包含这些列:

d_ID 折扣

还有带有这些列的表tbl_Tarrif

p_ID 价格

我想在单个查询中选择 DiscountPrice,在 SQL Server 中使用存储过程很容易,但在 Access 中我不知道该怎么做。

我试过了:

SELECT Discount
  FROM tbl_Discount
 WHERE (d_ID = ?)
 UNION
SELECT Price
  FROM tbl_Tariff
 WHERE (p_ID = ?)

但它返回两行,每行一列:

Discount
0
75000

我想在一行中显示两列(折扣、价格),如下所示:

Discount Price
0        75000

【问题讨论】:

请在答案中添加访问标签 d_ID 是 tbl_Discount 中 tbl_Tariff 的外键吗? @Andrew Spartan 我试图添加它,但它不允许我添加它。 @Homayoun 没有这两张桌子没有任何关系 你说在SQL Server中作为sproc很容易做到。为什么不在此处发布该存储过程,以便我们确定您要转换为 Access 的内容? 【参考方案1】:

试试这个:

SELECT Discount , Price
FROM tbl_Discount, tbl_Tariff
WHERE d_ID = ? AND p_ID = ?

【讨论】:

以上是关于在一个查询Access数据库中从具有不同字段的两个不同表中选择列的主要内容,如果未能解决你的问题,请参考以下文章

为啥是 ”。” Access中的查询字段名称中允许但表字段名称中不允许?

Microsoft Access 查询 - 将两个查询合并为一个

为啥在两个类型转换字段上连接的 Access 查询中会出现“#Error”的结果?

access建立查询时,啥情况下两表之间要建立关系

在access查询设计中,啥情况下要把查询的两个表关联起来

库存 SQL 查询出现歧义错误,其中两个字段应相等以进行计算。 MS-ACCESS