oracle中vsize和length

Posted qian@@jing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle中vsize和length相关的知识,希望对你有一定的参考价值。

其实LENGTH与VSIZE这两个函数联系不大,区别很大。虽然都是“取长度”,但是LENGTH函数结果是“有多少个字符”,VSIZE结果是“需要多少bytes”。
简单看一下这两个函数

1.创建表T并初始化三条数据

[email protected]>

create table t (x varchar2(10));
[email protected]> insert into t values (‘H‘);

[email protected]> insert into t values (‘侯‘);

[email protected]> insert into t values (‘H侯‘);

[email protected]> commit;

2.查看表T中的数据
[email protected]> select * from t;
X

----------
H

H侯
3.比较LENGTH和VSIZE两个函数的结果

[email protected]> col x for a10

[email protected]> col DUMP(X) for a30

[email protected]> select x, length(x), vsize(x), dump (x) from t;

X LENGTH(X) VSIZE(X) DUMP(X)

---------- ---------- ---------- ------------------------------
H 1 1 Typ=1 Len=1: 72
侯 1 3 Typ=1 Len=3: 228,190,175
H侯 2 4 Typ=1 Len=4: 72,228,190,175

4.结论

“H”包含1个字符,长度是1 byte;
“侯”包含1个字符,长度是3 bytes;
“H侯”包含2个字符,长度是4 bytes。


转自 : https://zhidao.baidu.com/question/1177251446363924539.html














































以上是关于oracle中vsize和length的主要内容,如果未能解决你的问题,请参考以下文章

vsize 函数不能与 PL/SQL 中的修剪函数一起使用

如何在 Toad for Oracle 中使用自定义代码片段?

21个常用代码片段

JavaScript 代码片段

zabbix api创建screen vsize限制解决

leetcode_1292. Maximum Side Length of a Square with Sum Less than or Equal to Threshold_[二维前缀和](代码片段