4
私はこのようなテーブルを持っている:表からすべてのOracle VARRAYの要素数を数える方法は?
CREATE TABLE spatial_data (
id NUMBER PRIMARY KEY,
geometry SDO_GEOMETRY);
SDO_GEOMETRYは、以下の型を持つフィールドのSDO_ORDINATESあり:NUMBER
のVARRAY(1048576)AS
TYPEのSDO_ORDINATE_ARRAYを私はポイントの数を取得することができます指定されたオブジェクトの場合:
select count(*)
from table(
select s.geometry.sdo_ordinates
from spatial_data s
where s.id = 12345
);
いくつかのオブジェクトの数を取得するにはどうすればよいですか?使用できません
where s.id in (1, 2, 3, 4, 5)
私は本当にパフォーマンスに気を付けています。おそらく、PL/SQLは正しい選択でしょうか?
私はあなたが1つのクエリでそれを行うことができると思います
@dmiandre - 私はうまくいくと思われるクエリを追加しました –
ありがとうございました!私はこれらの2つのクエリを比較し、pl/sql関数による2番目のアプローチははるかに高速に動作します。 – dmiandre