有没有办法在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).
您的自定义数据类型可以支持方法,方法可以包含参数.
原文链接:https://www.f2er.com/oracle/204834.htmlCREATE 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;