Sql server 在SSRS中转换Cisco CDR日期时间和持续时间

Sql server 在SSRS中转换Cisco CDR日期时间和持续时间,sql-server,reporting-services,Sql Server,Reporting Services,我正在SSRS中创建一个报告,从包含Cisco CDR数据的表中提取包括通话日期和持续时间在内的数据。这两个字段都将数据存储为bigint数据类型。我知道日期/时间字段是Unix时间 我的挑战是,我需要在报告中正确显示日期/时间和持续时间,但我不确定如何在SSRS中创建适当的表达式来实现这一点。我还需要允许用户通过输入开始和结束日期参数来运行报告。如果您能提供帮助,我将不胜感激。您可以使用Convert功能在拉入时获取所需内容 SELECT CONVERT(Datetime, <your

我正在SSRS中创建一个报告,从包含Cisco CDR数据的表中提取包括通话日期和持续时间在内的数据。这两个字段都将数据存储为bigint数据类型。我知道日期/时间字段是Unix时间


我的挑战是,我需要在报告中正确显示日期/时间和持续时间,但我不确定如何在SSRS中创建适当的表达式来实现这一点。我还需要允许用户通过输入开始和结束日期参数来运行报告。如果您能提供帮助,我将不胜感激。

您可以使用Convert功能在拉入时获取所需内容

SELECT CONVERT(Datetime, <your date field>, 120) 
然后确保在where子句中使用它们,并在语句之间使用:

WHERE CONVERT(Datetime, <your date field>, 120) 
BETWEEN CONVERT(Datetime, @StartTime, 120) AND CONVERT(Datetime, @EndDate, 120)
其中转换(日期时间,120)
在转换(Datetime,@StartTime,120)和转换(Datetime,@EndDate,120)之间
通过这种方式,您可以确保所有日期保持相同的格式,以便在查询中获得正确的结果


如果在此之后使用纯文本,请转到“参数”选项卡,右键单击并创建新参数,然后将其命名为@BeginningDate并选择日期\时间数据类型,然后对SEOCD执行相同操作并将其命名为@FinishingDate。创建这些数据集后,右键单击数据集,转到“属性”,然后转到“参数”选项卡,在“参数名称”下输入@StartDate和参数值类型[@BeginningDate],这意味着@BeginningDate的值,然后对@EndDate和@FinishingDate执行相同的操作,这样就可以了。日期/时间参数在报告中自动创建日期选择器。

您可以使用Convert函数在导入时获取所需内容

SELECT CONVERT(Datetime, <your date field>, 120) 
然后确保在where子句中使用它们,并在语句之间使用:

WHERE CONVERT(Datetime, <your date field>, 120) 
BETWEEN CONVERT(Datetime, @StartTime, 120) AND CONVERT(Datetime, @EndDate, 120)
其中转换(日期时间,120)
在转换(Datetime,@StartTime,120)和转换(Datetime,@EndDate,120)之间
通过这种方式,您可以确保所有日期保持相同的格式,以便在查询中获得正确的结果

如果在此之后使用纯文本,请转到“参数”选项卡,右键单击并创建新参数,然后将其命名为@BeginningDate并选择日期\时间数据类型,然后对SEOCD执行相同操作并将其命名为@FinishingDate。创建这些数据集后,右键单击数据集,转到“属性”,然后转到“参数”选项卡,在“参数名称”下输入@StartDate和参数值类型[@BeginningDate],这意味着@BeginningDate的值,然后对@EndDate和@FinishingDate执行相同的操作,这样就可以了。日期/时间参数在报告中自动创建日期选择器。

您可以使用

DATEADD(s, epoch, '1970-01-01 00:00:00')
你可以用

DATEADD(s, epoch, '1970-01-01 00:00:00')

共享数据集以帮助您。共享数据集以帮助您。