如何在SQL/PostgreSQL中显示分数?
我想在PostgreSQL中显示分数,就像它们输入时一样,不简化,也不转换为小数。我不喜欢使用什么样的数据类型。我尝试过以下几种变体,但都没有效果:如何在SQL/PostgreSQL中显示分数?,postgresql,fractions,Postgresql,Fractions,我想在PostgreSQL中显示分数,就像它们输入时一样,不简化,也不转换为小数。我不喜欢使用什么样的数据类型。我尝试过以下几种变体,但都没有效果: SELECT to_char(2/32, '99/99') AS "Fraction"; 这给出了/0的结果,但我想要的是2/32 在我的实际情况中,分子和分母是表字段值,如“登记人数”/“总人数” 感谢您的帮助!谢谢。使用concat而不是to\u char 使用concat而不是to_char 由于分子和分母是表列,因此使
SELECT to_char(2/32, '99/99') AS "Fraction";
这给出了/0的结果,但我想要的是2/32
在我的实际情况中,分子和分母是表字段值,如“登记人数”/“总人数”
感谢您的帮助!谢谢。使用concat而不是to\u char
使用concat而不是to_char
由于分子和分母是表列,因此使用:
select concat(numerator::text,'/',denominator::text) as "Fraction"
由于分子和分母是表列,因此使用:
select concat(numerator::text,'/',denominator::text) as "Fraction"
这是一个整数除法运算,不是小数。你将2除以32,结果是0,因为它是整数除法。没有进行简化。因此,选择“2/32”有什么问题?您能解释一下您所说的“输入”是什么意思吗?它们是如何输入的?我已经编辑了这个问题来解释为什么不选择“2/32”和“完全按照输入的方式输入”。谢谢如果这些是表中的列,可以使用concatenrolled_people,“/”,total_people这是一个整数除法运算,而不是分数。你将2除以32,结果是0,因为它是整数除法。没有进行简化。因此,选择“2/32”有什么问题?您能解释一下您所说的“输入”是什么意思吗?它们是如何输入的?我已经编辑了这个问题来解释为什么不选择“2/32”和“完全按照输入的方式输入”。谢谢如果这些是表中的列,则可以使用concatenrolled_people,“/”,total_people这是最好的,因为它允许使用表列。谢谢你,保护者!这是最好的,因为它允许使用表列。谢谢你,保护者!