【问题标题】:SSRS 2012 date formattingSSRS 2012 日期格式
【发布时间】:2019-04-21 02:47:54
【问题描述】:

在 SSRS 2012 中,我希望 date 将日期更改为特定格式,而不更改获取 SQL Server 日期的存储过程。这是因为存储过程非常复杂,除非万不得已,否则我不想更改它。

基本上我想要以下内容:

  1. 如果日期采用基本日期时间格式,我希望 06/03/2019 这样的日期看起来像 2019 年 6 月 3 日星期一的英文格式。

  2. 对于西班牙版本的日期是 6/3/2019,我希望西班牙版本的日期采用相同的格式。

那么你能告诉我如何实现这个目标的 SQL 吗?

【问题讨论】:

    标签: reporting-services ssrs-2012 ssrs-2008-r2 ssrs-tablix


    【解决方案1】:

    此 TSQL 将与 SQL 2012 一起使用,在此示例中,SQL 服务器的语言是 Español。

    SET DATEFORMAT yyyymmdd
    DECLARE @date as DATE
    SET @date = '20190603'
    SELECT @@LANGUAGE AS SQL_Language, FORMAT ( @date, 'D') AS 'Date'
    

    返回的结果集是这样的

    FORMAT() 函数可以输出多种格式的日期时间以获取更多详细信息see this web page。

    如果需要,SSRS 报告还可以支持日期时间格式。详情请见this answer。

    【讨论】:

    • 从你的例子看,sql怎么知道语言是西班牙语/
    • 逻辑可以在ssrs中而不是t-sql中吗?你能告诉我如何实现目标吗
    • @user1816979 我使用以下 TSQL 命令将语言设置为西班牙语。设置语言西班牙语;
    • 在 SSRS 报告中添加从数据集中查找日期值。 (1) 在显示日期值的文本框上用鼠标右键单击一次。 (2) 点击'Text Properties..' 打开'Text Box Properties' (3) 选择'Number' (4) 从'Type:' 的列表中选择你想要显示的格式参见 - imgur.com/a/h0ov4Gu 注意报告语言设置为“es-ES”的示例
    【解决方案2】:

    我认为让 SSRS 进行格式化会更好。您也不需要更新存储过程或视图。

    你想要的格式

    我希望 2019 年 6 月 3 日这样的日期看起来像 2019 年 6 月 3 日星期一

    您可以将文本框的 FORMAT 属性设置为

    dddd, MMMM d, yyyy
    

    使用西班牙语设置时格式应相同 - 西班牙语除外。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-02-28
      • 1970-01-01
      • 2018-04-04
      • 2019-07-27
      • 1970-01-01
      • 1970-01-01
      • 2018-02-13
      相关资源
      最近更新 更多