首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Denodo:如何聚合varchar数据类型?

Denodo:如何聚合varchar数据类型?
EN

Stack Overflow用户
提问于 2018-04-24 21:00:20
回答 3查看 174关注 0票数 0

我正在从Denodo视图表中的anstime列中创建一个聚合,我使用强制转换将其转换为浮点数,它只对那些带句点的数字(例如123.123)起作用,但对于没有句点的数字不起作用(例如123)。下面是我的代码,它只适用于带句号的数字:

代码语言:javascript
复制
SELECT row_date,
    case
        when sum(cast(anstime as float)) is null or sum(cast(anstime as float)) = 0
        then 0
        else sum(cast(anstime as float))
    end as xans
FROM table where anstime like '%.%'
group by row_date

有人能帮我一下吗?没有月经怎么处理?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-06-15 05:53:20

我的猜测是,anstime中有一些不是数字的值,因此为什么没有where anstime like '%.%'谓词会导致失败,就像其他注释中提到的那样。

您可以尝试在这个视图之前添加一个中间视图,该视图去掉任何非数字值(当然,保留小数点字符),这可能允许您不必使用where anstime like '%.%'筛选器。

可能是REGEXP函数,它可能会对此有所帮助

票数 0
EN

Stack Overflow用户

发布于 2018-04-24 21:04:34

您的where anstime like '%.%'子句将把可能的响应限制在anstime有句点的地方。如果您想要允许所有的值,请删除它。

票数 0
EN

Stack Overflow用户

发布于 2018-04-25 14:47:05

我感谢那些对我的关切作出反应的人。最后,我们必须与开发人员接触,从varchar修复列的数据类型,使其浮动,而不是解决问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50010654

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档