私は以下のようにOracle DBにテーブルを持っています。Oracle 12cでJSON文字列の一部を更新する方法は?
CREATE TABLE my_table(
id RAW(16) NOT NULL,
data CLOB,
CONSTRAINT my_table_pk PRIMARY KEY (id),
CONSTRAINT my_table_json_chk CHECK (data IS JSON)
);
INSERT INTO my_table (id, data)
VALUES (SYS_GUID(),
'{
"FirstName" : "aa",
"LastName" : "bb",
"Address" : {
"Street" : "99 My Street",
"City" : "My City",
"Country" : "UK",
"Postcode" : "A12 34B"
}');
今、私が知っている、私は$を使用してJSON文字列のaddress
のような特定のプロパティの値を取得することができます。
同様に、更新クエリでJSON構造全体を指定せずに、JSON文字列のStreet
プロパティを更新できますか?
私にこれを手伝ってください。
は、なぜあなたはデシベルでJSONを保管する必要がありますか?プロパティの列forceachを作成し、特定の列を照会してフィルターすることもできます。値を見つけ出し、そこから特定の値だけを得ることは、基本的にはdbのパフォーマンスに非常に重いストリング操作です。 –
Chetanは、他のいくつかの要件のためにJSONをDBに保存しましたが、今はそのデザインを変更することはできません。だから私がこの疑念について私を助けることができるなら、私に示唆してください。 – Raj