【问题标题】:Convert Varchar2 to Char array in Oracle在 Oracle 中将 Varchar2 转换为 Char 数组
【发布时间】:2013-10-01 06:26:22
【问题描述】:

我有一个 varchar2 字段,想将其拆分为字符数组 像 'ABCDEF' --> 'A' 'B' 'C' 'D' 'E' 如何将我的字段值转换为字符数组?

【问题讨论】:

标签: oracle split char varchar2


【解决方案1】:

如果您实际上是指 PL/SQL 字符集合,则可以执行类似的操作

SQL> ed
Wrote file afiedt.buf

  1  declare
  2    type char_arr is table of char(1) index by pls_integer;
  3    l_str varchar2(100) := 'ABCDEF';
  4    l_arr char_arr;
  5  begin
  6    for i in 1 .. length(l_str)
  7    loop
  8      l_arr(i) := substr( l_str, i, 1 );
  9    end loop;
 10    dbms_output.put_line( l_arr.count );
 11* end;
SQL> /
6

PL/SQL procedure successfully completed.

不过,如果不了解业务需求,我往往会非常怀疑。当您发现自己在 PL/SQL 中拆分字符串时,这几乎总是意味着您以非原子形式存储数据并且需要解决数据模型问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-28
    • 2018-07-11
    • 2021-06-16
    • 1970-01-01
    • 2011-06-08
    • 2017-01-17
    • 2015-08-10
    • 2020-12-20
    相关资源
    最近更新 更多