Gracias ....
Estoy tratando de resolverlo... Si hubiera otra manera te agradecería.... <_> (o o) ( ?? ) <>-<> Micky Khan ________________________________ De: Alvaro Herrera <alvhe...@alvh.no-ip.org> Enviado: jueves, 28 de diciembre de 2017 21:57 Para: Micky Khan Cc: FORO POSTGRES Asunto: Re: Recorrer Tabla/cursor y formar un solo dato Micky Khan escribió: > y me muestra este error : > ERROR: no coinciden los paréntesis en o cerca de «;» > LINE 11: ...CAST( cast( por_pol as INTEGER) as CHAR(5) END CASE || '/' ; Este problema es simple --- te falta el paréntesis que cierra el CAST. es decir estas líneas > CASE WHEN por_alg = 100 THEN cHilado2 := '' ELSE cHilado2 := > cHilado2 || cast( por_alg as char(10) END CASE ; > CASE WHEN por_nyl = 100 THEN cHilado2 := '' ELSE cHilado2 := > cHilado2 || cast( por_nyl as char(10) END CASE ; > CASE WHEN por_pol = 100 THEN cHilado2 := '' ELSE cHilado2 := > cHilado2 || cast( por_pol as char(10) END CASE ; > CASE WHEN por_lyc = 100 THEN cHilado2 := '' ELSE cHilado2 := > cHilado2 || cast( por_lyc as char(10) END CASE ; > CASE WHEN por_coc = 100 THEN cHilado2 := '' ELSE cHilado2 := > cHilado2 || cast( por_coc as char(10) END CASE ; > CASE WHEN por_vis = 100 THEN cHilado2 := '' ELSE cHilado2 := > cHilado2 || cast( por_vis as char(10) END CASE ; > CASE WHEN por_acr = 100 THEN cHilado2 := '' ELSE cHilado2 := > cHilado2 || cast( por_acr as char(10) END CASE ; deberían ser > CASE WHEN por_alg = 100 THEN cHilado2 := '' ELSE cHilado2 := > cHilado2 || cast( por_alg as char(10)) END CASE ; > CASE WHEN por_nyl = 100 THEN cHilado2 := '' ELSE cHilado2 := > cHilado2 || cast( por_nyl as char(10)) END CASE ; > CASE WHEN por_pol = 100 THEN cHilado2 := '' ELSE cHilado2 := > cHilado2 || cast( por_pol as char(10)) END CASE ; > CASE WHEN por_lyc = 100 THEN cHilado2 := '' ELSE cHilado2 := > cHilado2 || cast( por_lyc as char(10)) END CASE ; > CASE WHEN por_coc = 100 THEN cHilado2 := '' ELSE cHilado2 := > cHilado2 || cast( por_coc as char(10)) END CASE ; > CASE WHEN por_vis = 100 THEN cHilado2 := '' ELSE cHilado2 := > cHilado2 || cast( por_vis as char(10)) END CASE ; > CASE WHEN por_acr = 100 THEN cHilado2 := '' ELSE cHilado2 := > cHilado2 || cast( por_acr as char(10)) END CASE ; Me parece que hay más problemas en tu código, y me parece que hay una manera más simple de solucionar el requerimiento, pero eso te puedo decir por ahora. -- Álvaro Herrera https://www.2ndQuadrant.com/ [https://www.2ndquadrant.com/static/images/logo.png]<https://www.2ndquadrant.com/> Professional PostgreSQL | 2ndQuadrant<https://www.2ndquadrant.com/> www.2ndquadrant.com Stay in touch with us. Subscribe to our monthly newsletter to hear the latest developments from 2ndQuadrant and related technologies. We’ll also send you any ... PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services