统计列组中的列数
Count the number of columns in a column group
我需要报告每位工程师每月平均拜访客户的次数。
我的 SQL 查询在开始日期和结束日期之间创建了一个临时的 table 月份,并将其左连接到主要数据 table,以确保即使在没有访问的月份也能返回行制作。
因此从 SQL 返回的数据示例可能是:
我的报告有两个列组,一个用于年,一个用于月,我有一个工程师的行组。
对于此报告,返回的日期始终是当月的第一天,即使实际访问可能是任何日期。
每年年末都有一个单元格,其中包含 Count(Customer) 并计算该工程师当年的访问次数。我还想要一个单元格,显示当年每个月的平均访问次数。
对于一整年,我可以简单地除以 12。但是对于部分年份,我需要计算那一年的月份列数。
我尝试了 CountDistinct(Month),但这只计算了至少进行了一次访问的月份,因此月平均值不正确。
如何计算列组中的列数,包括没有数据的列?
谢谢。
我这样做的方法是在您的临时日期 table 中添加一列,其中选择了月数。
您可以通过计算临时 table 中的月份然后将值附加到它来完成此操作,或者,如果日期 table 包含的不仅仅是月份,则根据你传入的参数。
例如
SELECT *, DATEFIFF("m", @startDate, @endDate) as NoOfMonths
INTO #myTempDateTable
FROM myDateTable
WHERE etc...
然后在 SSRS 中,您只需将总数除以这个数字即可。
我需要报告每位工程师每月平均拜访客户的次数。 我的 SQL 查询在开始日期和结束日期之间创建了一个临时的 table 月份,并将其左连接到主要数据 table,以确保即使在没有访问的月份也能返回行制作。
因此从 SQL 返回的数据示例可能是:
我的报告有两个列组,一个用于年,一个用于月,我有一个工程师的行组。
对于此报告,返回的日期始终是当月的第一天,即使实际访问可能是任何日期。
每年年末都有一个单元格,其中包含 Count(Customer) 并计算该工程师当年的访问次数。我还想要一个单元格,显示当年每个月的平均访问次数。
对于一整年,我可以简单地除以 12。但是对于部分年份,我需要计算那一年的月份列数。
我尝试了 CountDistinct(Month),但这只计算了至少进行了一次访问的月份,因此月平均值不正确。
如何计算列组中的列数,包括没有数据的列?
谢谢。
我这样做的方法是在您的临时日期 table 中添加一列,其中选择了月数。
您可以通过计算临时 table 中的月份然后将值附加到它来完成此操作,或者,如果日期 table 包含的不仅仅是月份,则根据你传入的参数。
例如
SELECT *, DATEFIFF("m", @startDate, @endDate) as NoOfMonths
INTO #myTempDateTable
FROM myDateTable
WHERE etc...
然后在 SSRS 中,您只需将总数除以这个数字即可。