【问题标题】:Coalesce and max in same query return `Function unknown Coalesce`同一查询中的合并和最大值返回“功能未知合并”
【发布时间】:2017-10-07 15:32:36
【问题描述】:

我试图在我的查询中使用coalescemax(),但是当我尝试它时,它返回function unknown coalesce

这是我的查询

SELECT COALESCE(MAX(DOCUMENTNUMBER), 0) AS Maxx FROM DOCUMENTS WHERE (DOCUMENTTYPE = 2)

这是错误信息:

当我在没有max() 的情况下尝试相同的查询时,它运行正常。

【问题讨论】:

    标签: c# sql visual-studio firebird


    【解决方案1】:

    这是指问题的原始版本。

    函数名不加引号;

    SELECT COALESCE(MAX(DOCUMENTNUMBER), 0) AS Maxx
    FROM DOCUMENTS
    WHERE DOCUMENTTYPE = 2
    

    【讨论】:

    • 不抱歉,Visual Studio 首次运行后会自动添加。它没有引号,我又复制/粘贴了一次又忘记删除引号,仍然错误
    • coalesce() 在 Firebird 1.5 (firebirdsql.org/refdocs/langrefupd15-coalesce.html) 中添加。那是很久以前的事了,但也许您使用的是非常旧的版本。
    • 我使用的是 2.1 版,正如我所说,当我删除 max(DOCUMENTNUMBER) 并只留下 COALESCE(DOCUMENTNUMBER, 0) 时它可以工作,但它会列出所有行而不是最大行
    • @UProduction 。 . .您需要弄清楚这些双引号的来源。它们根本不应该出现在查询中。
    猜你喜欢
    • 1970-01-01
    • 2015-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-01
    • 2023-03-13
    • 1970-01-01
    • 2013-11-27
    相关资源
    最近更新 更多