我有一个字符串数组,以以下格式存储在oracle列中作为json数组:
let payload = await this.load_data(this.root_dir + '/resources /payload/' + file_name + ".json")
答案 0 :(得分:1)
我做了以下测试,这可能是您要寻找的:
create table t(json_v varchar2(40))
insert into t values('["abc", "xyz"]');
insert into t values('["cde", "fgh"]');
insert into t values('["xyz"]');
SELECT *
from t, json_table(t.json_v, '$[*]' columns (value PATH '$'))
WHERE value = 'xyz'
Output Result
JSON_V value
["abc", "xyz"] xyz
["xyz"] xyz
您的问题二,为什么查询总是返回零,因为您必须包装这些值,请参见JSON_QUERY语法
SELECT JSON_QUERY(json_v, '$[*]' WITH WRAPPER) AS value FROM myTable;