0

道歉: 我已经尝试了一段时间,但我没有接受过关系数据库方面的培训,所以我什至不知道在尝试搜索答案时使用的语言。

表说明:

  • 表 A - 客户名单
  • 表 B - 100 美元以下的客户订单
  • 表 C - 超过 100 美元的客户订单

背景: 我想制作一份列出每个客户的报告。有些客户在 B 和 C 中有条目,有些只有 B,有些只有 C(有些没有!)。我希望我的报告列出一个客户(A),然后每个 B(如果他们有 B),然后每个 C(如果他们有 C)。我希望 B 和 C 位于不同的列中(我认为它们必须是。)

问题: 我尝试过使用我可以做的各种连接,我得到的最接近的是:

  • A 左外连接(强制从)到 B
  • A 也是左外连接(强制从)到 C

结果: 对于 B 中的每次更改,如果客户在 B 中有 5 个订单,在 C 中有 10 个订单,它会列出每个 CIe,我的报告在 B 列中列出相同的 B 5 次,然后在 C 列中列出每个 C 一次。然后它移动到 B 列中的下一个 B (对每个 C 重复自身 - 等等)。这个客户端应该有 15 行,但它目前有 50 行。

问题:我应该使用什么连接?我不明白任何形式的连接解释......

4

1 回答 1

0

我认为子报表可能是您的朋友。您将报表按表 A 中的客户分组,然后创建 2 个详细信息部分(a、b)并在详细信息 A 中放置一个使用表 B(链接到表 a 中的客户)的子报表,并在 100 美元以下和详细信息 B 中显示订单您放置了一个使用表 C(也链接到表 a 中的客户)的子报表,其中显示了超过 100 美元的订单。

让我知道这是否有意义,

克里斯

于 2013-10-17T19:39:40.880 回答