有没有办法区分超过1个字段

时间:2009-04-11 20:59:17

标签: sql crystal-reports distinct

我需要一份包含办公室,日期和订单计数的报告。我需要每月的订单总数,但每天只需要1个订单。

e.g。

  

West 1/1/2009 1订单

     

West 1/1/2009 1订单

     

West 1/2/2009 1 order

在我的报告中我会看到

  

West 1/1/2009 1订单

     

West 1/2/2009 1 order

我的总订单是2。

我知道,这对SQL来说非常简单,但我没有访问权限。

2 个答案:

答案 0 :(得分:2)

你只是在寻找这个吗?

SELECT DISTINCT Office, Date, OrderCount FROM YourTable

这会复制您的结果,但数据集太小,无法确定您是否正在尝试完成此操作。使用DISTINCT子句只返回Office,Date和OrderCount的唯一组合 - 在这种情况下,每天/每天一行。

更新:啊 - 我没有读过您没有SQL访问权限的部分。你还有两个选择:

  1. 在Crystal Reports Designer的“数据库”菜单中,选中菜单底部的“选择不同记录”选项。
  2. 直接编辑SQL查询 - 数据库菜单 - >数据库专家 - >在“当前连接”下,单击“添加新命令”并键入SQL命令。修改我上面提供的那个以满足您的需求,它应该可以解决问题。

答案 1 :(得分:1)

您可以创建三个组,一个用于办公室,一个用于日期,一个用于订单。然后将字段放在日组页脚中并禁止其他部分。这将导致报告显示每天的新部分,但每个订单仅显示一行。然后,您可以将您的运行总计添加到该部分。将运行总计设置为所需字段的总和,评估日期组的更改,然后重置月份更改(您需要为此项设置一个公式来评估月份)。

这应该按照您要查找的方式对报告进行分组和排序,并且将有一个将在每个月重置的一侧运行的总计。希望这会有所帮助。