Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Date 如何在SSRS中格式化日期?_Date_Reporting Services_Format - Fatal编程技术网

Date 如何在SSRS中格式化日期?

Date 如何在SSRS中格式化日期?,date,reporting-services,format,Date,Reporting Services,Format,在SSRS中,报表查询正在以列的形式生成日期,格式为: 销售ID20200331 ID20200430 ID20200531 要删除ID,我使用了以下表达式: =右(字段!ID20210331.Value,len(字段!ID20210331.Value)-2) 这给了我84,而不是删除ID 如何删除ID并将日期格式化为2020年3月等 谢谢如果您的字段值为“ID20200430”等,那么在SSRS中您可以使用类似的内容 =DateSerial( MID(Fields!IDDate.Value,

在SSRS中,报表查询正在以列的形式生成日期,格式为:

销售ID20200331 ID20200430 ID20200531

要删除ID,我使用了以下表达式: =右(字段!ID20210331.Value,len(字段!ID20210331.Value)-2) 这给了我84,而不是删除ID

如何删除ID并将日期格式化为2020年3月等

谢谢

如果您的字段值为“ID20200430”等,那么在SSRS中您可以使用类似的内容

=DateSerial(
MID(Fields!IDDate.Value, 3, 4),
MID(Fields!IDDate.Value, 7, 2),
RIGHT(Fields!IDDate.Value, 2)
)
然而似乎是您的列[名称]代表日期,对吗

如果这是真的,那么您必须在SQL中取消填充列,然后将结果值转换为实际日期格式

这里有一些示例数据来说明如何做到这一点

DECLARE @t TABLE (Sales varchar(10), ID20200331 int, ID20200430 int, ID20200531 int)

INSERT INTO @t VALUES 
('A', 1,2,3),
('B', 4,5,6),
('C', 7,8,9)

SELECT 
        Sales, IdDate, SomeNumber 
        , MyDate = DATEFROMPARTS(SUBSTRING(IdDate, 3, 4), SUBSTRING(IdDate, 7, 2), SUBSTRING(IdDate, 9, 2))
    FROM @t
    UNPIVOT(
            SomeNumber FOR IdDate IN ([ID20200331],[ID20200430],[ID20200531])
    ) unpvt
这给了我们一个正确的日期类型,包括myDate列


然后,您可以在SSRS中的矩阵控件中使用它将数据返回到数据透视视图中

您的字段值是ID20200331还是字段名?