IT开放社区

隐式转换转换函数

转换函数.png

隐式转换类型:

源数据类型
目标数据类型
VARCHAR2    or    CHA
NUMBER
VARCHAR2    or    CHADATE
NUMBERVARCHAR2
DATEVARCHAR2

 验证隐式转换:

新建表a1,加入3个字段类型分别为数值、日期、字符;

centos@SCOTT> CREATE TABLE a1(a NUMBER(2),b DATE,c VARCHAR2(10));
Table created.
centos@SCOTT> DESC a1
 Name                                         Null? Type
 ----------------------------------------- -------- ----------------------------
 A                                                  NUMBER(2)
 B                                                  DATE
 C                                                  VARCHAR2(10)
centos@SCOTT>

插入与表字段类型不匹配的数据,验证隐式转换;

centos@SCOTT> INSERT INTO a1 VALUES('1','2017-3-30',1);
1 row created.
centos@SCOTT> COMMIT;
Commit complete.
centos@SCOTT> SELECT * FROM a1;
A          B          C
---------- ---------- ----------
1          2017-03-30 1
centos@SCOTT>

 字段A由字符隐式转换为了数值,字段B由字符隐式转换为了日期,字段C由数值隐式转换为了字符;

通过查看执行计划,观察隐式转换:

centos@SCOTT> SET AUTOT TRACE EXP
centos@SCOTT> SELECT * FROM a1 WHERE c=1;
Execution Plan
----------------------------------------------------------
Plan hash value: 2676145672
--------------------------------------------------------------------------
| Id  | Operation   | Name | Rows  | Bytes | Cost (%CPU)| Time  |
--------------------------------------------------------------------------
|   0 | SELECT STATEMENT  |  |     2 |    58 |     3   (0)| 00:00:01 |
|*  1 |  TABLE ACCESS FULL| A1  |     2 |    58 |     3   (0)| 00:00:01 |
--------------------------------------------------------------------------
Predicate Information (identified by operation id):
---------------------------------------------------
   1 - filter(TO_NUMBER("C")=1)      ----->隐式转换
Note
-----
   - dynamic sampling used for this statement (level=2)
centos@SCOTT>


相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

网站分类
最新文章
    随机文章
      站点信息
      • 文章总数:113
      • 页面总数:2
      • 分类总数:3
      • 标签总数:1
      • 评论总数:0
      • 浏览总数:45518
      左邻右舍

      BlogPowerBy Z-BlogPHP 1.5 Zero ;Theme By 爱墙纸

      IT开放社区:京ICP备13044647号.初创于Oracle DBA实战班.邮箱:admin@itkaifang.com

      分享:

      支付宝

      微信