oracle – 用于自定义类型的implode函数的PL / SQL
发布时间:2020-12-12 15:11:22 所属栏目:百科 来源:网络整理
导读:有没有办法在PL / SQL中创建一个implode例程,它将任何自定义数据类型作为参数并连接其成员,由一些指定的字符串分隔? 例如,假设我有以下类型: CREATE TYPE myPerson AS OBJECT( forename VARCHAR2(50),surname VARCHAR2(50),age NUMBER); 然后,假设一个函数
有没有办法在PL / SQL中创建一个implode例程,它将任何自定义数据类型作为参数并连接其成员,由一些指定的字符串分隔?
例如,假设我有以下类型: CREATE TYPE myPerson AS OBJECT( forename VARCHAR2(50),surname VARCHAR2(50),age NUMBER ); 然后,假设一个函数返回一个myPerson类型的对象,但我希望将列连接在一起: SELECT implode(getPerson(1234),'$$') from dual; 返回(假设这个设计示例中的数据已设置): John$$Doe$$55 可以将分隔符指定为可选参数,但第一个参数的类型可以是任何内容(不一定是myPerson). 您的自定义数据类型可以支持方法,方法可以包含参数.CREATE TYPE myPerson AS OBJECT( forename VARCHAR2(50),age NUMBER,MEMBER FUNCTION get_record(pGlue IN varchar2) RETURN VARCHAR2 ); CREATE TYPE BODY myPerson AS MEMBER FUNCTION get_record(pGlue varchar2) RETURN VARCHAR2 IS BEGIN RETURN forename || pGlue || surname || pGlue || age ; END get_record; END; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |