【问题标题】:Finding the DATEDIFF between two columns and creating its own column [duplicate]查找两列之间的 DATEDIFF 并创建自己的列 [重复]
【发布时间】:2019-04-07 05:46:49
【问题描述】:

试图找到两个日期之间的 DATEDIFF 并将其显示为它自己的列。 这是我目前的专栏: currentcolumns

这就是我需要的: needed

这是我一直在运行的错误代码:

SELECT orderNumber, DATEDIFF(day,orderDate,shippedDate) AS day FROM datenumtest;

我得到的错误是:#1582 - 调用本机函数 'DATEDIFF' 中的参数计数不正确

我现在查看了大量网站,但似乎看不出问题所在。想法?

【问题讨论】:

  • DATEDIFF 只有两个参数。 day 不是必需的,因为它总是以天为单位返回一个值。见manual

标签: mysql datediff


【解决方案1】:

MySQL 的DATEDIFF 函数只需要两个参数:

SELECT orderNumber, DATEDIFF(shippedDate, orderDate) AS day
FROM datenumtest;

注意使用的日期参数的顺序,假设发货日期大于订单日期,它将返回一些正的天数。

【讨论】:

  • 是的。我发帖后看到了你的评论。
  • 谢谢你们!那里还有另一个需要“一天”的人吗?我发誓我到处都看到了!
  • @ColleenMorrison MySQL 的DATEDIFF 以天为单位返回差异。如果你想要一些 other 单元,请告诉我们那是什么。
  • 不,我需要的是一天!我想我只是对我在网上看到的其他资源感到困惑。感谢您的帮助!
【解决方案2】:

MySQL 中的DATEDIFF 函数仅支持两个输入参数,而该函数的SQL Server 变体支持通过传入附加参数来导出日期、月份等。

【讨论】:

    猜你喜欢
    • 2016-06-12
    • 1970-01-01
    • 1970-01-01
    • 2018-05-18
    • 2016-05-02
    • 2020-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多