私はフォローのJSONを持っているこの例では、JSONJSONクエリ(パフォーマンス)
でのOracle 12cとのSQL Developerを使用しています:
{
"id": "12",
"name": "zhelon"
}
だから私が作成しました
create table persons
id number primary key,
person clob,
constraint person check(person is JSON);
アイデアは人の列に、前のJSONを保持し、そのデータを取得するために、次のクエリを使用している
:こののフォローテーブルperfonceについて話すSELECT p.person FROM persons p WHERE json_textvalue('$name', 'zhelon')
、私は
create table persons
id number primary key,
name varchar(2000),
person clob,
constraint person check(person is JSON);
するために、いくつかのJSONフィールドを抽出し、(それが可能であれば私は知らない)、応答時間を改善するために、テーブルに新しいcolumを追加するのintrestingています次の操作を行います。
SELECT p.person FROM persons p WHERE p.name = 'zhelon';
私の質問は:
データを取得するクエリを作成するための最良の方法は何ですか?私は応答時間を短縮したい。
データを高速に取得するクエリはどれですか?
SELECT p.person FROM persons p WHERE json_textvalue('$name', 'zhelon')
または
SELECT p.person FROM persons p WHERE p.name = 'zhelon';
私がいることでしたが、私の質問は、あなたが列に索引を作成する場合は、 'NAME'パフォーマンスが大幅になりますもパフォーマンス – cheloncio
についてですより良い。 –
インデックスは常にperfonamceを改善しますが、この場合、私はclobの欄にインデックスを付けるとどうなりますか? @WernfriedDomscheit – cheloncio