oracle中number的用法,Oracle Number数字

oracle中number的用法,Oracle Number数字oracle函数的OracleNumber数字在本教程中,您将学习OracleNUMBER数据类型以及如何使用它来为表定义数字列。OracleNUMBER数据类型简介OracleNUMBER数据类型用于存储可能为负值或正值的数值。以下说明了NUMBER数据类型的语法:NUMBER[(precision[,scale])]OracleNUMBER数据类型具有以下精度和尺度。精度是一…

大家好,又见面了,我是你们的朋友全栈君。

oracle函数 的 Oracle Number数字

在本教程中,您将学习Oracle NUMBER数据类型以及如何使用它来为表定义数字列。

Oracle NUMBER数据类型简介

Oracle NUMBER数据类型用于存储可能为负值或正值的数值。以下说明了NUMBER数据类型的语法:

NUMBER[(precision [, scale])]

Oracle NUMBER数据类型具有以下精度和尺度。

精度是一个数字中的位数。 范围从1到38。

尺度是数字中小数点右侧的位数。 范围从-84到127。

例如,数字1234.56的精度是6,尺度是2。所以要存储这个数字,需要定义为:NUMBER(6,2)。

精度和尺度都是十进制数字,可选。 如果跳过精度和小数位,Oracle使用数字的最大范围和精度。

例如,下面的表格定义了一个可以存储数值的数字,其数值范围和精度都是最大的:

NUMBER

以下语法定义了一个定点数字:

NUMBER(p,s)

要定义一个整数,可以使用下面的形式:

NUMBER(p)

上面表示一个精度为p,尺度为零的定点数,相当于如下:

NUMBER(p,0)

Oracle允许规模为负数,例如,下面的数字将数值四舍五入到数百。

NUMBER(5,-2)

请注意,如果在NUMBER(p,s)列中数字,并且数字超过精度p,则Oracle将发出错误。 但是,如果数量超过尺度s,则Oracle将对该值进行四舍五入。

Oracle NUMBER数据类型示例

以下语句创建一个名为number_demo的表,该表由Number数字列组成:

CREATE TABLE number_demo (

number_value NUMERIC(6, 2)

);

以下INSERT语句向number_demo表中插入三个数字:

INSERT INTO number_demo

VALUES(100.99);

INSERT INTO number_demo

VALUES(90.551);

INSERT INTO number_demo

VALUES(87.556);

在上面的示例中,

第一个值被插入成功,因为该数字在列的定义范围内。

第二个值向下取整,第三个值向上取整,因为该列只接受带有两个小数点的数字。

以下示例插入number_value可以接受的最大值和最小值:

INSERT INTO number_demo

VALUES(9999.99);

INSERT INTO number_demo

VALUES(-9999.99);

以下示例会导致错误,因为插入的值超出了为列定义的精度。

INSERT INTO number_demo

VALUES(-10000);

考虑下面的例子:

INSERT INTO number_demo

VALUES(9999.999);

在此示例中,该值被四舍五入,因为数字超过了为列定义的精度。

Oracle NUMBER数据类型别名

Oracle包含许多可用于定义数字列的别名,如下表所示:

ANSI数据类型

Oracle NUMBER数据类型

INT

NUMBER(38)

SMALLINT

NUMBER(38)

NUMBER(p,s)

NUMBER(p,s)

DECIMAL(p,s)

NUMBER(p,s)

请注意,INT,SMALLINT,NUMERIC和DECIMAL只是别名。它们不是真正的数据类型。 Oracle在内部将这些别名映射到相应的NUMBER数据类型。

在本教程中,您已经学习了Oracle NUMBER数据类型以及如何使用它来为表定义数字列。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/163890.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java实现 Hello World

    Java实现 Hello WorldHelloWorld记事本手写HelloWorldeclipse编辑器从零到一实现HelloWorld记事本手写HelloWorld1.新建Hello文本文件输入以下代码eclipse编辑器从零到一实现HelloWorld

    2022年7月16日
    13
  • socket的sigpipe信号[通俗易懂]

    socket的sigpipe信号[通俗易懂]对一个对端已经关闭的socket调用两次write,第一次将会收到队端的RST响应,第二次将会生成SIGPIPE信号,该信号默认结束进程.具体的分析可以结合TCP的”四次握手”关闭.TCP是全双工的信道,可以看作两条单工信道,TCP连接两端的两个端点各负责一条.当对端调用close时,虽然本意是关闭整个两条信道,但本端只是收到FIN包.按照TCP协议的语义,表示对端只是关闭…

    2022年5月30日
    47
  • git clone出现 fatal: unable to access ‘https://github.com/…’的解决办法(亲测有效)

    git clone出现 fatal: unable to access ‘https://github.com/…’的解决办法(亲测有效)如下图所示,当我试图克隆别人的repo时,会发生这样的错误,当我从git:/而不是https://,克隆时,它工作得很好。发生这种情况是因为代理是在git中配置的。既然它是https代理(而不是http)gitconfighttp.proxy和gitconfig–globalhttp.proxy也无济于事。解决方案一1、看看你的git配置gitconfig…

    2022年7月21日
    27
  • Mysql ID生成器

    Mysql ID生成器Mysql可以作为分布式序列号生成器,写下笔记以防忘记。需要一张表server_id_table表中的role为服务器角色名,nextId为当前Id,startId为开始Id,endId为结束Id。使用下列sql语句可以实现分布式Id生成器的功能,而且是线程安全的

    2022年6月16日
    17
  • 文本分类算法研究与实现

    文本分类算法研究与实现总结了文本分类中的常用算法,包括8种传统算法:k临近、决策树、多层感知器、朴素贝叶斯(包括伯努利贝叶斯、高斯贝叶斯和多项式贝叶斯)、逻辑回归和支持向量机概念及其实现代码

    2022年5月22日
    29
  • 【JS】JS数组添加元素的三种方法「建议收藏」

    【JS】JS数组添加元素的三种方法「建议收藏」1、push()方法可向数组的末尾添加一个或多个元素,并返回新的长度。  1)、语法:arrayObject.push(newelement1,newelement2,….,newelementX)参数 描述 newelement1 必需。要添加到数组的第一个元素。 newelement2 可选。要添加到数组的第二个元素。 newelement…

    2025年5月27日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号