0
我有一个Clob列的表。 我想创建一份报告,告诉我有多少行每个组X CLOB大小Oracle,CLOB大小报告
例如,如果步长为100K的存在:
Row Count Clob size
----------- -------------
10 0k - 100K
5 100k - 200K
3 200k - 300K
如何查询和动态设置步骤大小由100个字符或100K字符?
我有一个Clob列的表。 我想创建一份报告,告诉我有多少行每个组X CLOB大小Oracle,CLOB大小报告
例如,如果步长为100K的存在:
Row Count Clob size
----------- -------------
10 0k - 100K
5 100k - 200K
3 200k - 300K
如何查询和动态设置步骤大小由100个字符或100K字符?
像这样的东西应该工作(注:我已经使用了10KB的块;你需要修改,以你是什么后大小的块。):
select row_count,
clob_size_group||' - '||(clob_size_group + 10) clob_size_group
from (select count(*) row_count,
floor((dbms_lob.getlength(clob_col)/1000) -- kb
/10)*10 clob_size_group -- separate into groups of 10kb
from your_table
group by floor((dbms_lob.getlength(clob_col)/1000)
/10)*10)
order by clob_size_group;
此外,值得注意的是, dbms_lob.getlength将返回CLOB的字符数,而不是字节数(对于BLOB而言),所以如果您有多字节字符,它可能与实际大小不同。