CREATE OR REPLACE FUNCTION GetOfficeNameListByIDList(officeIDList VARCHAR2(200))
VARCHAR2(200))改为VARCHAR2
SELECT officeNameList := officeNameList || F_OrganiseName || ',' FROM TS_Organise WHERE F_ID := CONVERT(INT, ID);
VARCHAR2(200))改为VARCHAR2
SELECT officeNameList := officeNameList || F_OrganiseName || ',' FROM TS_Organise WHERE F_ID := CONVERT(INT, ID);
select GetOfficeNameListByIDList('2,34,1,65,32') from dual
时候说我的函数无效
改成:SELECT officeNameList = officeNameList || F_OrganiseName || ',' FROM TS_Organise WHERE F_ID = CONVERT(INT, ID);
officeIDList := RTRIM(officeIDList, ',');出错.因为你传的是'2,34,1,65,32'.
你应该养成好的错误处理习惯.
officeIDList := LTRIM(officeIDList, ',');
officeIDList := RTRIM(officeIDList, ',');
我这两句是为了适应有时候可能会传入是',2,34,1,65,32,'两边或一边有逗号的情况.
目的是什么?
看不太懂
我用的是Oracle 9好像没有函数left