获取oracle.sql.array的长度
发布时间:2021-01-12 01:54:05 所属栏目:站长百科 来源:网络整理
导读:在Oracle DB上,我有一个带有SDO_GEOMETRY对象的表.我想查询数据库中边缘小于x的多边形.从理论上讲,这可以很简单地查询 SELECT * FROM myTable t WHERE LENGTH(t.geometry.sdo_ordinates) x 显然,LENGTH函数是为char和类型定义的 t.geometry.sdo_ordinates是o
在Oracle DB上,我有一个带有SDO_GEOMETRY对象的表.我想查询数据库中边缘小于x的多边形.从理论上讲,这可以很简单地查询 SELECT * FROM myTable t WHERE LENGTH(t.geometry.sdo_ordinates) < x 显然,LENGTH函数是为char和类型定义的 PS:我用以下查询解决了我的搜索,仍然是原始问题仍然存在,是不是有数组大小/长度函数? SELECT * FROM myTable t WHERE LENGTH(t.geomety.Get_WKT()) < (x * c) 解决方法不,没有简单的sql函数可以计算数组的元素.但是如here所述,另一个想法是PL / SQL脚本. create or replace function get_count(ar in SDO_ORDINATE_ARRAY) return number is begin return ar.count; end get_count; t.geometry.sdo_ordinates.COUNT是一个PL / SQL attribute,可以在函数/过程中使用.因此,这不是普通SQL中可用的函数. 属性: value.someAttribute 功能: doSomething(value) 澄清:函数有返回值,程序没有. Source (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |