mysql - MYSQL 使用案例从 curdate() 中减去天数
问题描述
我想使用案例陈述根据挂牌费从 curdate() 中减去 30 天或 60 天 如果挂牌费 = 5 或 6,则减去 30 天 如果挂牌费 = 7 或 8,则减去 60 天
我试过这个,但它似乎不起作用
where `status`='C' and `close_date`>curdate() AND `date_posted` < curdate() -
CASE
WHEN listing_fee = 5 THEN INTERVAL 30 DAY
WHEN listing_fee = 6 THEN INTERVAL 30 DAY
WHEN listing_fee = 7 THEN INTERVAL 60 DAY
WHEN listing_fee = 8 THEN INTERVAL 60 DAY
END
解决方案
(CASE
WHEN listing_fee = 5 THEN `date_posted` < DATE_SUB(curdate(), INTERVAL 30 DAY)
WHEN listing_fee = 6 THEN `date_posted` < DATE_SUB(curdate(), INTERVAL 30 DAY)
WHEN listing_fee = 7 THEN `date_posted` < DATE_SUB(curdate(), INTERVAL 60 DAY)
WHEN listing_fee = 8 THEN `date_posted` < DATE_SUB(curdate(), INTERVAL 60 DAY)
ELSE 0/1 END # <- don't know what result
)
推荐阅读
- unity3d - 在多个游戏对象的所有帧中保持特定的旋转
- c - queue.h 库中结构体的使用
- amp-html - amp-mustache 模板未呈现
- html - 使用链接在浏览器窗口中打开 pdf 文件?
- python - 将颜色应用于渐变方向
- r - 分组时data.table的j参数的预编程组件
- powershell - ConvertTo-HTML 参数无法正常工作
- spring - 乘以 Spring Boot 项目 maven 运行跳过子模块
- typescript - 使用 koa 解析器读取正文参数的类型不存在属性
- ios - Fatal error in array - Index out of range