oracle 判断正负号,Oracle Number型的深入理解

oracle 判断正负号,Oracle Number型的深入理解NUMBER数据类型NUMBER(precision,scale)a)precision表示数字中的有效位;如果没有指定precision的话,Oracle将使用38作为精度。b)如果scale大于零,表示数字精确到小数点右边的位数;scale默认设置为0;如果scale小于零,Oracle将把该数字取舍到小数点左边的指定位数。c)Precision的取值范围为【1—38】;Sca…

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

NUMBER数据类型

NUMBER ( precision, scale)a) precision表示数字中的有效位;如果没有指定precision的话,Oracle将使用38作为精度。

b) 如果scale大于零,表示数字精确到小数点右边的位数;scale默认设置为0;如果scale小于零,Oracle将把该数字取舍到小数点左边的指定位数。

c) Precision的取值范围为【1—38】;Scale的取值范围为【-84—127】。

d) NUMBER整数部分允许的长度为(precision- scale),无论scale是正数还是负数。

e) 如果precision小于scale,表示存储的是没有整数的小数。

f) Precision表示有效位数,

有效数位:从左边第一个不为0的数算起,小数点和负号不计入有效位数;scale表示精确到多少位,指

精确到小数点左边或右边多少位(+-决定)。g)

Number值类型举例:

1234567.89

Number

1234567.89

1234567.89

Number(8)

1234567

1234567.89

Number(6)

1234567.89

Number(9,1)

1234567.9

1234567.89

Number(9,3)

1234567.89

Number(7,2)

1234567.89

Number(5,-2)

1234600

1234511.89

Number(5,-2)

1234500

1234567.89

Number(5,-4)

1230000

1234567.89

Number(*,1)

1234567.9

0.012

Number(2,3)

0.012

0.23

Number(2,3)

h) 关于precision, scale也可以作如下表述

定点数的精度(p)和刻度(s)遵循以下规则:

1) 当一个数的整数部分的长度 > p-s 时,Oracle就会报错

2) 当一个数的小数部分的长度 > s 时,Oracle就会舍入。

3) 当s(scale)为负数时,Oracle就对小数点左边的s个数字进行舍入。

4) 当s > p 时,p表示小数点后第s位向左最多可以有多少位数字,如果大于p则Oracle报错,小数点后s位向右的数字被舍入

a) oracle本来就没有int类型,为了与别的数据库兼容,新增了int类型作为number类型的子集。

b) int类型只能存储整数;number可以存储浮点数,也可以存储整数。

数据库建表的时候,decimal,numeric不带精度,oracle会自动把它处理成INTEGER;带精度,oracle会自动把它处理成number。

d) Oracle只用NUMBER(m,n)就可以表示任何复杂的数字数据。e) decimal,numeric,int等都为sql、DB2等数据库的数据类型,ORACLE为了兼容才将其引入;但实际上在ORACLE内部还是以NUMBER的形式将其存入。

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

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

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

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


相关推荐

  • c# MD5加密

    c# MD5加密usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Security.Cryptography;usingSystem.Text;usingSystem.Threading.Tasks;/****************************** *概要:MD5加密 *设…

    2022年7月11日
    14
  • 阿里巴巴JVM调优工具arthas「建议收藏」

    阿里巴巴JVM调优工具arthas「建议收藏」下载下载全量包从Maven仓库下载最新版本,点击下载:从GithubReleases页下载https://github.com/alibaba/arthas/releases用as.sh启动解压后,在文件夹里有as.sh,直接用./as.sh的方式启动:./as.sh打印帮助信息:./as.sh-h用arthas-boot启动或者在解压后,在文件夹里有arthas-boot.jar,直接用java-jar的方式启动:java-jararth

    2022年5月6日
    68
  • 数据库表结构设计[通俗易懂]

    数据库表结构设计[通俗易懂]为什么要学习数据表结构设计实际开发中,需要根据需求,将实际模型转换成物理表结构,这时需要考虑几个问题,表名称如何命名,表中需要哪些字段,各个字段的命名规范,字段的数据类型,字段的长度,和其他表的联系,这些都是需要考虑的。推荐使用的工具PowerDesigner这个工具,可以做UUML图帮助分析数据关系,最重要的是可以把设计好的表结构转换成你使用的数据库的命令语句,方便在数据库中使用…

    2022年9月13日
    0
  • 添加config文件_config配置文件

    添加config文件_config配置文件在我们第一次写web应用程序的时候,我们很快会接触到一个文件,那就是配置文件——web.config。我们的第一个比较深刻的使用就是我们不需要把我们的数据库链接零散的写在我们的代码中了,我们只需要在w

    2022年8月3日
    4
  • 什么是PCM?它和.wav文件是什么关系?[通俗易懂]

    什么是PCM?它和.wav文件是什么关系?[通俗易懂]什么是PCM?它和.wav文件是什么关系?

    2022年4月20日
    49
  • 网线 – RJ45接口线序[通俗易懂]

    网线 – RJ45接口线序[通俗易懂]前言大概做法:准备网线钳子,把网线皮剥开,然后按照线序排列好,修剪铜线长度,塞入水晶头(有伸缩白条的地方朝下),用钳子压紧,最后用测线器测两头是否1-8点同步(从1开始,8结束)。线序:白橙橙白绿蓝白蓝绿白棕棕水晶头摆放…

    2022年9月17日
    0

发表回复

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

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