显示带有前导符号的浮点列
Display float column with leading sign
我正在使用 PHP 和 PostgreSQL。我有以下查询:
SELECT ra, de, concat(ra, de) AS com, count(*) OVER() AS total_rows
FROM mdust
LIMIT :pagesize OFFSET :starts
列 ra
和 de
是浮点数,其中 de
可以是正数或负数,但是,de
不会 return +
与浮动关联。但是它确实 return -
负号。我想要的是 concat(ra, de)
中的 de
列到 return 返回正号或负号。
我正在查看 PostgreSQL 的 this 文档,它提供了 to_char(1, 'S9')
这正是我想要的,但它只适用于整数。我找不到这样的 floats 函数。
to_char()
也适用于 float
。您只需定义所需的输出格式。简单模式 S9
会截断小数位并且对于大于 9 的数字会失败。
test=> SELECT to_char(float '0.123' , 'FMS9999990.099999')
test-> , to_char(float '123' , 'FMS9999990.099999')
test-> , to_char(float '123.123', 'FMS9999990.099999');
to_char | to_char | to_char
---------+---------+----------
+0.123 | +123.0 | +123.123
(1 row)
添加的 FM
修饰符代表“填充模式”并抑制无关紧要的尾随零(除非被 0
符号而不是 9
强制)和填充空白。
在句点前后添加任意多的 9
以允许任意多的数字。
您几乎可以随心所欲地定制所需的输出格式。 Details in the manual here.
旁白:有比LIMIT :pagesize OFFSET :starts
更有效的分页解决方案:
我正在使用 PHP 和 PostgreSQL。我有以下查询:
SELECT ra, de, concat(ra, de) AS com, count(*) OVER() AS total_rows
FROM mdust
LIMIT :pagesize OFFSET :starts
列 ra
和 de
是浮点数,其中 de
可以是正数或负数,但是,de
不会 return +
与浮动关联。但是它确实 return -
负号。我想要的是 concat(ra, de)
中的 de
列到 return 返回正号或负号。
我正在查看 PostgreSQL 的 this 文档,它提供了 to_char(1, 'S9')
这正是我想要的,但它只适用于整数。我找不到这样的 floats 函数。
to_char()
也适用于 float
。您只需定义所需的输出格式。简单模式 S9
会截断小数位并且对于大于 9 的数字会失败。
test=> SELECT to_char(float '0.123' , 'FMS9999990.099999')
test-> , to_char(float '123' , 'FMS9999990.099999')
test-> , to_char(float '123.123', 'FMS9999990.099999');
to_char | to_char | to_char
---------+---------+----------
+0.123 | +123.0 | +123.123
(1 row)
添加的 FM
修饰符代表“填充模式”并抑制无关紧要的尾随零(除非被 0
符号而不是 9
强制)和填充空白。
在句点前后添加任意多的 9
以允许任意多的数字。
您几乎可以随心所欲地定制所需的输出格式。 Details in the manual here.
旁白:有比LIMIT :pagesize OFFSET :starts
更有效的分页解决方案: