1

我在使用 ms access 2000 时遇到问题,我尝试在查询中多次输入同一字段,但它只显示该字段一次。就像我多次输入数字为(例如)8150 的字段一样,它只会显示一次。 ms access 2000 查询/字段问题

此图像显示查询。

我已经检查了 ms access 2000 上的所有内容以尝试解决此问题,但我没有找到合适的。

此图像包含我遇到的问题以及我需要的问题。

这张图片应该是不言自明的

4

1 回答 1

0

我知道您的数据集已简化,但查看您的数据、输入等,您的查询似乎是从单个表中提取并重复结果 - 所以没有加入考虑。

我认为问题是您在查询中的 DISTINCTROW,它正在删除所有重复值。

如果您删除“DISTINCTROW”,我相信它可能会给您带来您所期望的。换句话说,改变这个:

SELECT DISTINCTROW Ring.[Ring Number], Ring.[Mounting Weight]
FROM Ring

对此:

SELECT Ring.[Ring Number], Ring.[Mounting Weight]
FROM Ring

对于它的价值,将来可能还会有一些策略来简化此查询的运行方式(减少对对话框提示的依赖),但我知道您可能想先解决这个问题,所以如果这不行。

- 编辑 -

删除distinct仍然适用,但我突然看到了问题。该查询将逻辑描述为多个值的“或”。因此,重复该值并不意味着多行,它只是意味着您重复了一个真实的条件。

例如,如果我有:

Fruit     Count
------    ------
Apple     1
Pear      1
Kiwi      3

我说选择哪里水果是苹果或苹果或苹果或苹果,查询仍然只列出第一行。一旦“或”条件匹配为真,就会开始短路,其他条件都无关紧要。

这听起来不像你想要的。

这是我认为你需要做的:

  1. 摆脱查询中的提示
  2. 将您的选项加载到单独的表中——重复可以发生在这里
  3. 更改查询以对新表执行内部联接

新表(以“ Selection”为例):

Entry    Ring Number    Mounting Weight
-----    -----------    ----------------
1        8105           you get the idea...
2        8110
3        8110
4        8110
5        8115
6        8130
7        8130
8        8130
9        8130
10       8150

新查询:

select
  Ring.[Ring Number], Ring.[Mounting Weight]
from
  Ring
  Inner join Selection on Ring.[Ring Number] = Selection.[Ring Number]

这具有允许多于(或少于)10 条记录的额外优势

于 2015-10-08T19:30:31.467 回答