oracle number整数,Oracle number类型的语法和用法

oracle number整数,Oracle number类型的语法和用法Oraclenumber类型的语法很简单,就是:number(p,s)p,s都是可选的,假如都不填,p默认为38,s默认为-48~127。1.精度(precision),或总位数。默认情况下,精度为38位,取值范围是1~38之间。也可以用字符*表示38。2.小数位置(scale),或小数点右边的位数。小数位数的合法值为-48~127,其默认值取决于是否指定了精度。如果没有知道精度,小数位数则默…

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

Oracle number类型的语法很简单,就是:

number(p,s)

p,s都是可选的,假如都不填,p默认为38,s默认为-48~127。

bb

1. 精度(precision),或总位数。默认情况下,精度为38位,取值范围是1~38之间。也可以用字符*表示38。

2.

小数位置(scale),或小数点右边的位数。小数位数的合法值为-48~127,其默认值取决于是否指定了精度。如果没有知道精度,小数位数则默认有最大的取值区间。如果指定了精度,小数位数默认为0(小数点右边一位都没有)。例如,定义为NUMBER的列会存储浮点数(有小数),而NUMBER(38)只存储整数数据(没有小数),因为在第二种情况下小数位数默认为0.

如下SQL语句:

create table t ( msg varchar2(12.), num_col number(5,2) );

insert into t (msg,num_col) values ( ‘123.456’, 123.456

);//执行成功,保存的是123.46

insert into t (msg,num_col) values ( ‘1234’, 1234

);//执行失败,要保留2位小数,那么整数位最多3位,现在是4位。

如果scale是负数怎么样,表示左边整数位舍入几位:

create table t ( msg varchar2(12.), num_col number(5,-2) );

insert into t (msg,num_col) values ( ‘123.45’, 123.45

);//执行成功,保存的是100

insert into t (msg,num_col) values ( ‘123.456’, 123.456

);//执行成功,保存的是100

其他数据类型:

1. NUMERIC(p,s):完全映射至NUMBER(p,s)。如果p未指定,则默认为38.

2. DECIMAL(p,s)或DEC(p,s):完全映射至NUMBER(p,s)。如果p为指定,则默认为38.

3. INTEGER或INT:完全映射至NUMBER(38)类型。

4. SMALLINT:完全映射至NUMBER(38)类型。

5. FLOAT(b):映射至NUMBER类型。

6. DOUBLE PRECISION:映射至NUMBER类型。

7. REAL:映射至NUMBER类型。

性能考虑:

一般而言,Oracle NUMBER类型对大多数应用来讲都是最佳的选择。不过,这个类型会带来一些性能影响。Oracle

NUMBER类型是一种软件数据类型,在Oracle软件本身中实现。我们不能使用固有硬件操作将两个NUMBER类型相加,这要在软件中模拟。不过,浮点数没有这种实现。将两个浮点数相加时,Oracle会使用硬件来执行运算。

换而言之,将一些列的number列相加,没有将一系列float列相加来得快。因为float列的精度低很多,一般是6~12位。

比如:select sum(ln(cast( num_type as binary_double ) )) from t

比:select sum(ln(cast( num_type) )) from t 要快很多。

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/163932.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • poe交换机能连接普通交换机_两台poe交换机之间怎么连接

    poe交换机能连接普通交换机_两台poe交换机之间怎么连接PoE交换机的链接方式有哪些?前面我们在介绍监控的供电方式时有介绍PoE供电,有一些朋友对poe供电存到一些疑问,那么,交换机品牌16年生产厂家ONV光网视小编今天就用图文形式来与您一起了解PoE的几种供电方式和连接方法。交换机一、交换机和终端都支持PoE  这种方法PoE交换机直接通过网线接到支持PoE供电的无线AP和网络摄像机上,这种方法最简单,但也需要注意如下两点:  1、确定PoE…

  • js中find的用法_js中find函数

    js中find的用法_js中find函数首先简单的介绍一下ES6是什么,可能很多人还是第一次听说,我们都知道H5是html的新一代的标准,同样,ES6是javascript的新一代标准,全称是ECMAScript6.0,简称ES6,其实不是什么神秘的东西。15年6月发布的。今天我们要说的是结合ES6新特性谈一下js里面的一个很好用的方法-find()现在的前端和过去的不一样,过去的前端只要会画页面就行了,但是现在仅仅会画页面已…

    2022年10月14日
  • ab网站压力测试

    ab网站压力测试命令的参数、输出结果的中文注解permalink以前安装好APACHE总是不知道该如何测试APACHE的性能,现在总算找到一个测试工具了。就是APACHE自带的测试工具AB(apa

    2021年12月25日
  • 【Android】performClick()方法

    【Android】performClick()方法1. performClick()方法的作用:   performClick()方法是使用代码主动去调用控件的点击事件(模拟人手去触摸控件) 2. 使用注意事项: 如果同时使用了view.setOnTouchListener()方法,则有可能存在拦截view.performClick()的响应事件, 因为当view.OnTouchEvent()在event.getActio…

  • java 递归函数

    java 递归函数一、递归函数,通俗的说就是函数本身自己调用自己…如:n!=n(n-1)!你定义函数f(n)=nf(n-1)而f(n-1)又是这个定义的函数。。这就是递归二、为什么要用递归:递归的目的是简化程序设计

  • 填充因子_太阳能电池填充因子计算公式

    填充因子_太阳能电池填充因子计算公式创建索引时有个选项FILLFACTOR这个参数的作用是:在创建索引的时候每页写入多少数据,如FILLFACTOR=80即表示每页写入80%的数据,空余20%,不写默认是100CREATEINDEX

发表回复

您的电子邮箱地址不会被公开。

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