json_data ={"jobId":"7f","created":"2020-05-24T00:22:55.705373Z","updated":"2020-05-24T00:31:03.716279Z","status":"DONE","sha265sum":"d3adf4466b5c88027478e4c","result":"FAILED","errors":[{"errorCode":"S_ERROR","errorDetail":"In: Can't create in vms : Error when sending ing s request:INTERNAL: PreparedStatementCallback; Duplicate entry 'Mob 66 The L' for key 'uc'; nested exception is Violation Exception: Duplicate entry 'Mob 66 The L' for key 'uc'","sId":47}
我想使用 oracle sql 查询在上述数据中用空字符替换 (\'(;我正在尝试使用
从 json_logs d 中选择替换(d.json_data,"\"', '"''(,其中d.json_data像"%错误%";但没有运气
谢谢!
您的字符串已转义单引号,'
.但你是东
replace(d.json_data,'"', '"')
正在寻找转义的双引号,"
.
所以你需要使用:
replace(d.json_data,'''', '''')
它还将搜索和替换字符串中的单引号加倍,以执行 Oracle 自己的转义。
您还可以使用替代引用机制:
replace(d.json_data,q'[']', q'[']')
但我不确定在这种情况下是否更清楚。
数据库<>小提琴