Jack
unread,Mar 11, 2009, 10:44:17 PM3/11/09Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to Oracle PL/SQL
The problem I have occurs when the SQL that I build is too great in
length. Here is my template SQL STATEMENT.
SELECT INSTANCE_NAME, GENESIS_PORT,
LTRIM(SYS_CONNECT_BY_PATH(API_NAME || ':' || TO_CHAR
(AVERAGE_TIME,'90.9999') || 's','; '), ';') AS AVERAGE_TIME_API
FROM ( SELECT INSTANCE_NAME, GENESIS_PORT, AVERAGE_TIME, API_NAME,
ROW_NUMBER() OVER
(PARTITION BY INSTANCE_NAME ORDER BY AVERAGE_TIME DESC) IM,
COUNT(*) OVER
(PARTITION BY INSTANCE_NAME) CNT
FROM GEN_API_PERFORMANCE
WHERE INSTANCE_NAME IS NOT NULL
AND STATISTICS_DATE>SYSDATE-2/24 AND
HOSTNAME='10.228.51.41'
AND API_NAME NOT IN
('_getMethods','genesisClearServerPerformance')
)
WHERE LEVEL = CNT
START WITH IM = 1
CONNECT BY PRIOR INSTANCE_NAME = INSTANCE_NAME AND PRIOR IM = IM - 1
When I try to increase this varchar2 past 4000, I get the:
ORA-01489: result of string concatenation is too long. Any solution
for this error?