【问题标题】:MS-access Pass-Through Query to SQL Server 2008 Adding PrefixMS-access 直通查询到 SQL Server 2008 添加前缀
【发布时间】:2018-08-10 09:00:44
【问题描述】:

我希望有人能以此为我指明正确的方向。我对使用直通查询相对较新,但认为我掌握了基础知识,但是在尝试为查询结果添加前缀时遇到了一个绊脚石

我有一个选择查询,其中包含将日期转换为财政年度的行,即 01/01/2018 将使用以下代码返回 2017 作为结果:

    [Created FY] = (CASE WHEN Month(create_date) IN (1, 2, 3) THEN DatePart(year,create_date)-1 ELSE DatePart(year,create_date) END),

我想在结果中添加一个前缀,以便它显示为 FY2017。直通是在 SQL Server 2008 上运行的。我已经研究过,到目前为止还没有提出任何解决方案。

对于这个难题的任何帮助将不胜感激。

【问题讨论】:

    标签: sql-server-2008 ms-access pass-through


    【解决方案1】:

    + 连接字符串,但必须先转换数字。

    因为有MONTH()函数,所以有YEAR(),稍微简化一下代码。

    所以:

    [Created FY] = 'FY' + CONVERT(char(4),
        (CASE WHEN MONTH(create_date) IN (1, 2, 3) 
         THEN YEAR(create_date)-1 
         ELSE YEAR(create_date) END)
       ),
    

    【讨论】:

    • 感谢您的帮助,安德烈,辛苦了。非常感谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多