首页 数据库 mysql教程 Oracle基础教程:函数to_char将number转成string

Oracle基础教程:函数to_char将number转成string

Jun 07, 2016 pm 05:23 PM

很多数据转换处理操作时,会遇到将0.007007040000转换成0.70%的需求,我们使用Oracle 的SQL 函数 to_char可以实现这种转换。这个

很多数据转换处理操作时,会遇到将0.007007040000转换成0.70%的需求,我们使用Oracle 的SQL 函数 to_char可以实现这种转换。

这个函数用来将DATE或NUMBER数据类型转换成可显示的字符串,格式是to_char(number_type, format_mask)。

格式'999.99',9表示对应的某一个指定位数的值,如果是值是0则忽略不显示,如果指定位数没有值,则以空格表示。

格式'0990.990',0表示对应的某一个指定位数的值,如果是值是0则显示为0,如果是没有值也显示为0。

格式'FM990.90',FM表示将显示出来的字符串定位数没有值而显示的空格清理掉,作用和ltrim类似。

SQL> select to_char(12304.560,'999.99') from dual;
 
TO_CHAR(12304.560,'999.99')
---------------------------
#######
 
SQL> select to_char(104.560,'999.99') from dual;
 
TO_CHAR(104.560,'999.99')
-------------------------
 104.56
 
SQL> select to_char(104.560,'99999.99') from dual;
 
TO_CHAR(104.560,'99999.99')
---------------------------
  104.56
 
SQL> select to_char(104.560,'99999.990') from dual;
 
TO_CHAR(104.560,'99999.990')
----------------------------
  104.560
 
SQL> select to_char(104.560,'0099.990') from dual;
 
TO_CHAR(104.560,'0099.990')
---------------------------
 0104.560

Sql代码

SQL>
SQL> select to_char(round(0.007007040000, 4) * 100, 'FM99999999990.90') || '%' as aa,
  2        length(to_char(round(0.007007040000, 4) * 100, 'FM99999999990.90') || '%') as bb
  3    from dual;
 
AA                      BB
---------------- ----------
0.70%                    5
 
SQL>
SQL> select to_char(round(0.007007040000, 4) * 100, '99999999990.90') || '%' as aa,
  2        length(to_char(round(0.007007040000, 4) * 100, '99999999990.90') || '%') as bb
  3    from dual;
 
AA                      BB
---------------- ----------
          0.70%        16

这是to_char将数字转换成字符串的常见操作功能,还有其他一些格式,见to_char(numeric)的格式模板。

模板代码

模板    描述
9    带有指定位数的值
0    前导零的值
. (句点)    小数点
, (逗号)    分组(千)分隔符
PR    尖括号内负值
S    带负号的负值(使用本地化)

L    货币符号(使用本地化)
D    小数点(使用本地化)
G    分组分隔符(使用本地化)
MI    在指明的位置的负号(如果数字 PL    在指明的位置的正号(如果数字 > 0)
SG    在指明的位置的正/负号
RN    罗马数字(输入在 1 和 3999 之间)
TH or th    转换成序数
V    移动 n 位(小数)(参阅注解)
EEEE    科学记数。现在不支持。

它还能将时间格式的数据转换成字符串,只是格式更加复杂。

 

linux

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

减少在Docker中使用MySQL内存的使用 减少在Docker中使用MySQL内存的使用 Mar 04, 2025 pm 03:52 PM

减少在Docker中使用MySQL内存的使用

如何使用Alter Table语句在MySQL中更改表? 如何使用Alter Table语句在MySQL中更改表? Mar 19, 2025 pm 03:51 PM

如何使用Alter Table语句在MySQL中更改表?

mysql无法打开共享库怎么解决 mysql无法打开共享库怎么解决 Mar 04, 2025 pm 04:01 PM

mysql无法打开共享库怎么解决

在 Linux 中运行 MySQl(有/没有带有 phpmyadmin 的 podman 容器) 在 Linux 中运行 MySQl(有/没有带有 phpmyadmin 的 podman 容器) Mar 04, 2025 pm 03:54 PM

在 Linux 中运行 MySQl(有/没有带有 phpmyadmin 的 podman 容器)

什么是 SQLite?全面概述 什么是 SQLite?全面概述 Mar 04, 2025 pm 03:55 PM

什么是 SQLite?全面概述

在MacOS上运行多个MySQL版本:逐步指南 在MacOS上运行多个MySQL版本:逐步指南 Mar 04, 2025 pm 03:49 PM

在MacOS上运行多个MySQL版本:逐步指南

哪些流行的MySQL GUI工具(例如MySQL Workbench,PhpMyAdmin)是什么? 哪些流行的MySQL GUI工具(例如MySQL Workbench,PhpMyAdmin)是什么? Mar 21, 2025 pm 06:28 PM

哪些流行的MySQL GUI工具(例如MySQL Workbench,PhpMyAdmin)是什么?

如何为MySQL连接配置SSL/TLS加密? 如何为MySQL连接配置SSL/TLS加密? Mar 18, 2025 pm 12:01 PM

如何为MySQL连接配置SSL/TLS加密?

See all articles