【问题标题】:Oracle - How to read from VARRAYOracle - 如何读取 VARRAY
【发布时间】:2014-02-15 20:49:27
【问题描述】:

我的表中有一个包含 VARRAY VARCHAR2 的列, 所以我想创建一个选择语句,给我所有的列 和 VARRAY 的所有对象彼此相邻, 有没有办法做到这一点?

例子:

CREATE TYPE arr AS VARRAY(5) OF VARCHAR2(10);

CREATE TABLE table1(
    v1 VARCHAR2(10)
    v2 VARCHAR2(20)
    v3 arr);

SELECT t.v1, t.v2, ??? FROM table1 t;

谢谢!

【问题讨论】:

  • 我只是好奇,如果我的解决方案对你有用。!
  • 对不起,它没有像我想要的那样工作,所以我停止了尝试!

标签: sql oracle varray


【解决方案1】:

你想要的就是这个!

SELECT t.v1, t.v2, nt.COLUMN_VALUE
FROM table1 t, TABLE(t.v3) nt

结果

V1  V2  COLUMN_VALUE
a   b   c
a   b   d
a   b   e
f   g   h
f   g   i

包含 t1.v3 也会给出逗号分隔的值。

SQL Fiddle

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-01-17
    • 2010-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-14
    • 2017-01-17
    相关资源
    最近更新 更多