2009-02-07 127 views
0

我有两张表,它们以某种方式连接。我花了最后一个小时搜索,没有找到任何具体的答案,在我的情况。显示数据并从MySQL中的多个数据库统计

这种情况是,表1称为客户端,表2称为项目。我需要列出所有客户名称,然后列出与该项目相关的项目数量和项目名称。

例如:

客户端1(2项目)
- 项目1标题
- 项目2标题

客户端2(0项目)

客户端3(1个项目)
- 项目1标题

这是如何可行的,在最简单的最简单的方法?

+0

你可以发表表架构吗? – Zoredache 2009-02-08 02:13:51

回答

0

基本上有三个部分给你的查询。

  1. 连接表
  2. 按项目分组输出
  3. 计算每客户

项目首先是容易的。它涉及在每个表中查找客户端ID字段,并使用指定两列(每个表中一列)的关联的JOIN子句。这会为每个项目提供一行,其中也包含匹配客户端的信息。这几乎是你要求的。

将第二个和第三个放在一个查询中并不是我会推荐的。如果您打算将其放入程序中,则可以轻松后处理查询的结果。为此,您需要添加一个ORDER BY子句来指定客户端的排序。这将把每个客户端的所有项目放在后续行中。

现在您可以编写一个循环来处理输出。因为它没有,它必须看两两件事:

  1. 当客户端ID改变
  2. 计数项目

通过这样做,它可以很容易地显示一个“组头”为每个客户,以及项目数量的“组页脚”。

0

你不会说你的应用程序的任何内容,但我建议分开查询和显示。让SQL为您获取数据,然后让其他内容呈现。

相关问题