【问题标题】:Case with dates between now and 2 days?日期在现在到 2 天之间的情况?
【发布时间】:2017-12-17 02:25:48
【问题描述】:

我正在尝试列出一个表格,如果计划日期在 2 天内,则将其列为警告,如果日期已过今天,则将其列为迟到。

我无法让这段代码的“Between”部分正常运行。之间的代码似乎在 case 语句之外起作用,但不在内部。非常感谢任何帮助。

谢谢,

SELECT schedule,
case when schedule BETWEEN(curdate(), curdate() + 2)then 1 else 0 end as 
 warning,
case when schedule < CURDATE() then 1 else 0 end as late
 from upgrade_table

错误: 错误代码 1064,SQL 状态 42000:您的 SQL 语法有错误; 检查与您的 MySQL 服务器版本相对应的手册以获取正确的 在 'then 1 else 0 end 附近使用的语法作为警告, sched

【问题讨论】:

  • 会出错吗?它会产生错误的答案吗?
  • 语法之间是BETWEEN value AND value
  • 不要只发布“我遇到麻烦”。引用错误。
  • 对,所以你需要修复语法,正如@RiggsFolly 11 分钟前所说。

标签: mysql


【解决方案1】:

BETWEEN 的正确语法是:

BETWEEN [FirstValue] AND [SecondValue]

例如:

WHERE [DATE] BETWEEN Date1 AND Date2+DAY(2)

【讨论】:

    猜你喜欢
    • 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
    相关资源
    最近更新 更多