GBase 8c
适配迁移
问答
函数不兼容
发表于2024-08-05 16:40:3887次浏览5个评论
为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【GBase版本】: GBase 8s V8.8.5_5.0.0
【操作系统】:
【CPU】:
【问题描述】*:不支持这种写法ADDDATE( s.subscribe_date, INTERVAL s.start_date MINUTE )
ADDDATE( s.subscribe_date, INTERVAL 88 MINUTE )这样是可以的。有么有什么方法能解决。
评论
登录后才可以发表评论
小忘发表于 2年前
ADDDATE( s.subscribe_date, s.start_date * INTERVAL 1 MINUTE ) 改成这样就行了
小忘发表于 2年前
@小忘:1、 Interval函数带表达式
Gbase不支持函数中带有表达式,如 select (curdate() - interval (weekday(curdate()) + 7) day)
解决方法:将 interval 中的函数提取出来, 以上语句转换成(解决思路,先将表达式式中的结果计算出来,然后通过与 interval '1 day'相乘转换单位)
SELECT (CURRENT_DATE - (weekday(curdate()) + 7) * INTERVAL '1 day');
其余INTERVAL的可以参考这种用法
Gbase不支持函数中带有表达式,如 select (curdate() - interval (weekday(curdate()) + 7) day)
解决方法:将 interval 中的函数提取出来, 以上语句转换成(解决思路,先将表达式式中的结果计算出来,然后通过与 interval '1 day'相乘转换单位)
SELECT (CURRENT_DATE - (weekday(curdate()) + 7) * INTERVAL '1 day');
其余INTERVAL的可以参考这种用法
最佳回答
GBase用户17533发表于 2年前
@小忘:这个方式可以。
曾浩轩发表于 2个月前
蹲个答案。
GBase用户47954发表于 1个月前
问题描述的不是热爱清晰
热门帖子
- 12025-12-01浏览数:182763
- 22023-05-09浏览数:25057
- 42023-09-25浏览数:18525
- 52020-05-11浏览数:17528