Oracle
 sql >> Database >  >> RDS >> Oracle

Ottieni la dimensione dell'array in Oracle sql

A condizione che tu abbia un is json controlla il vincolo sulla colonna, puoi usare il size() metodo per ottenere gli elementi numerici in un array:

create table t (
  c1 int, 
  c2 varchar2(100) 
    check ( c2 is json ) 
);

insert into t values ( 1, '{ "arr" : [1, 2, 3] }');
insert into t values ( 2, '{ "arr" : [1, 2, 3, 4, 5] }');

select c1, t.c2.arr.size() from t t;

C1    T.C2.ARR.SIZE()   
 1                  3 
 2                  5