无法弄清楚如何正确格式化我的gpa字段:
select y.id,
max(case when y.r = 1 then y.gpa_c end) gpa
from table y
当前输出:
ID | GPA
----+------
392 | 0
399 | 3.234
400 | 4
401 | 3.6
我已尝试cast()
,convert()
,decimal()
,to_char()
与2, 3
我希望格式化0.000
答案 0 :(得分:2)
您可以使用to_char()
:
TO_CHAR(column, '0d9999')
在您的查询中:
select y.id,
TO_CHAR(max(case when y.r = 1 then y.gpa_c end), '0d9999') gpa
from table y
必须注意:最好保留用于显示目的,大多数数字不应存储为字符串。
已更新为正确显示0
gpa的前导零。
演示:SQL Fiddle