我尝试使用这个转换
CASE
WHEN s.files_duration != '' THEN s.files_duration
ELSE 0.0
END :: NUMERIC AS files_duration_2
红移。
我正在等待这个字段中的小数,如:2.52等。但是值是四舍五入到3等等。为什么?
你能告诉我我做错了什么吗?
非常感谢。
通过转换为没有缩放的数字基本上是将其定义为整数,所以3。从RS文档"默认比例,如果没有指定,是0 ">
这个SQL片段提出了许多问题(比如s.s files_duration是字符串还是数字类型?),但转换为numeric(18,0)似乎是问题的根源。尝试NUMERIC(12,2) -或者任何对你的数据有意义的精度和比例。