ORACLE-012:oracle中纯数字的varchar2类型和number类型自动转换

使用过一个关联查询,两个表的字段定义了不同的类型。一个字段是varchar2类型,另一个字段是number类型,内容如下:‘00187‘和187。在使用中发现会自动将varchar2类型转换为number,即187和187。

效果与to_number()一样。

专门写了两个sql测试了下,如下:

select
case when ‘0110‘ = 110 then
  ‘true‘
else
  ‘false‘
 end
 from dual;
select
case when to_number(‘0110‘) = to_number(110) then
  ‘true‘
else
  ‘false‘
 end
 from dual;

结果都是true。

不过为了保险起见还是用to_number()进行转换更好一些。

时间: 2024-11-05 06:31:34

ORACLE-012:oracle中纯数字的varchar2类型和number类型自动转换的相关文章

oracle中int类型和number类型区别

INT类型是NUMBER类型的子类型.下面简要说明:(1)NUMBER(P,S)该数据类型用于定义数字类型的数据,其中P表示数字的总位数(最大字节个数),而S则表示小数点后面的位数.假设定义SAL列为NUMBER(6,2)则整数最大位数为4位(6-2=4),而小数最大位数为2位.(2)INT类型当定义整数类型时,可以直接使用NUMBER的子类型INT,顾名思义:INT用于整型数据. oracle本来就没有int类型,为了与别的数据库兼容,新增了int类型作为number类型的子集.int类型只能

js中Boolean类型和Number类型的一些常见方法

Boolean类型 Boolean类型重写了valueOf() 方法, 返回基本布尔类型值true或false,重写了toString() 方法,返回基本字符串"true" 和 "false" 创建一个Boolean类型的实例 var booleanObj = new Boolean(true); Boolean类型和Boolean值有三个区别: Boolean类型的实例总是真 var falseObject = new Boolean(false); var re

3.键盘输入10个数,放到数组中,(1)去除该数组中大于10的数 (2)将该数组中的数字写入到本地文件number.txt中

package cn.it.text; import java.io.FileWriter; import java.io.IOException; import java.util.Scanner; /* * 3.键盘输入10个数,放到数组中 (1)去除该数组中大于10的数 (2)将该数组中的数字写入到本地文件number.txt中 */ public class Test3 { public static int[] arr = new int[10]; public static void

【js实例】js中的5种基本数据类型和9种操作符

js中的5中基本数据类型 js标识符 第一个字符必须为字母,下划线,或美元符 其他字符可以是字母,下划线,美元符,数字 js标识符区分大小写 标识符不能使关键字和保留字 关键字: break do instanceof typeof case else new var catch finally return void continue for switch while debugger function this with default if throw   delete in try  

关于java中char类型和int类型相加结果的面试题

运行结果为 3 51 C 故而总结了以下几点: 举例子说明一下. System.out.println('0'+'A');// 48+65 = 113 未指定类型--输出int System.out.println((char)('0'+'A'));// q 强转char --输出char System.out.println(10+'A'); //75 未指定类型--输出int System.out.println((char)10+'A'); //75 未指定类型--输出int System

Java中JNI的使用详解第二篇:JNIEnv类型和jobject类型的解释

上一篇说的是一个简单的应用,说明JNI是怎么工作的,这一篇主要来说一下,那个本地方法sayHello的参数的说明,以及其中方法的使用 首先来看一下C++中的sayHello方法的实现: [cpp] view plaincopy JNIEXPORT void JNICALL Java_com_jni_demo_JNIDemo_sayHello (JNIEnv * env, jobject obj) { cout<<"Hello World"<<endl; } 对于

Mysql数据库中图片字段Blob类型和String类型相互转换

1.Blob-->String String result = ""; if (blob != null) { InputStream is = blob.getBinaryStream(); ByteArrayInputStream bais = (ByteArrayInputStream) is; byte[] byte_data = new byte[bais.available()]; // bais.available()返回此输入流的字节数 bais.read(byt

唯爱小粽子:Java中的long类型和Long类型比较大小

Java中我们经常要做一些判断,而对于判断的话,用的最多的便是">"."=="."<"的比较,这里我们进行一个Long类型数据和long类型数据的比较大小的讲解. Java中Long和long的区别 Java的数据类型分为两种: 1.基本类型:byte(8),short(16),int(32),long(64),float(32),double(64),char(16),boolean(1) 2.对象类型:Byte,Short,Int

SpringMVC中的返回值问题之三返回list类型和map类型

web.xml文件 <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app><display-name>Archetype Created Web Application</display-name> <