Correcto en V5R3 no me funciono y en V6R1 si .... Perdón por la mala corrección.
Saludos. El 17 de agosto de 2010 09:46, Fernando Pérez <[email protected]> escribió: > Si no te funciona será por la versión. En V5R4 sí se puede hacer. > > > Saludos. > > Fernando Pérez > > Cerámica Saloni. Dpto. Organización > > > Raul Bascones escribió: > > Esta forma: > > delete from biblioteca/archivo where (clave1, clave2) in (Select clave1, > clave2 from biblioteca/archivo fetch first 10 rows only) > > no funciona, la primera si. Cuando es más de un campo se deben concatenar > los > campos para su comprobación con "IN", mas o menos sería así: > > delete from biblioteca/archivo where (clave1 || clave2) in (Select clave1 > || clave2 from biblioteca/archivo fetch first 10 rows only) > > si clave1 y/o clave2 fueran númericos los concatenas con la función > "DIGITS" > > Saludos. > > > El 2 de agosto de 2010 17:05, Fernando Pérez <[email protected]> escribió: > >> La forma de poder hacerlo, suponiendo que el campo clave de >> biblioteca/archivo se llamara 'clave', sería: >> >> delete from biblioteca/archivo where clave in (Select clave from >> biblioteca/archivo fetch first 10 rows only) >> >> Si en lugar de un solo campo clave tuviera varios (por ejemplo, clave1, >> clave2), sería parecido: >> >> delete from biblioteca/archivo where (clave1, clave2) in (Select clave1, >> clave2 from biblioteca/archivo fetch first 10 rows only) >> >> Saludos. >> >> Fernando Pérez >> >> Cerámica Saloni. Dpto. Organización >> >> >> Bernabé Estrada escribió: >> >> Pues si se puede usar el fetch en el SQL interactivo. Ejemplo: >> >> >> >> Select * from biblioteca/archivo fetch first 10 rows only >> >> >> >> Pero a mi, al igual que a Pedro, no me déja utilizar esto en caso de un >> delete. >> >> >> >> Saludos. >> >> >> >> >> >> *From:* [email protected] [ >> mailto:[email protected]<[email protected]>] >> *On Behalf Of *Jorge Ubeda >> *Sent:* Sábado, 31 de Julio de 2010 05:33 a.m. >> *To:* [email protected] >> *Subject:* >> >> >> >> Pedro >> Disculpa si acaso estoy errado yo -no soy un usuario diario de DB2- , pero >> siempre he usado cursores en rpg, no en el entorno interactivo. O mediante >> algún otro recurso. Quizá estemos hablando de lo mismo, pero prefiero >> insistir por las dudas. En tu ejemplo empleado al comienzo de tu consulta, >> hay dos problemas (al menos usando STRSQL en la "pantalla verde", no el >> navigator, que no tengo a mano para chequear): >> 1, como María Bes te indicara, la denominación de las tablas es >> [biblioteca]/[tabla], no biblioteca.tabla (o catálogo). >> 2. esa sentencia no se puede ejecutar, porque un cursor no se puede >> declarar en el ambiente interactivo. Del manual Reference, para el Fetch: >> This statement can only be embedded in an application program. It is an >> executable statement that cannot be dynamically prepared. Multiple row fetch >> is not allowed in a REXX procedure. >> >> Un ejemplo de uso de un cursor en Infocenter lo puedes ver en >> http://publib.boulder.ibm.com/iseries/v5r1 >> /ic2924/index.htm?info/rzajp/rzajpmst02.htm >> Otro más sistematizado: >> http://publib.boulder.ibm.com/infocenter/iseries/v5r4 >> /index.jsp?topic=/sqlp/rbafycursorexamp.htm >> >> Espero que esté en el carril correcto... >> PD: A tu pregunta, estoy en Valencia, España, y por tu pregunta, no eres >> el Pedro que conozco. :-) >> Jorge Ubeda >> >> >> >> Date: Fri, 30 Jul 2010 20:41:18 +0000 >> From: Pedro Molina <[email protected]> >> Subject: RE: version DB2 (Pedro Molina) >> To: <[email protected]> >> Message-ID: <COL108- >> >> [email protected]> >> Content-Type: text/plain; charset="utf-8" >> >> >> >> Gracias Jorge, de donde eres? >> >> >> >> Mira, de hecho estoy bien claro con lo de los cursores de datos y todo ese >> rollo, pero aún así no soporta hacer lo que digo. >> >> >> >> Con lo del manual, pues es para Z/OS para SAP, pero quería probar a >> aplicar esto en el i5 y no lo permite. >> >> >> >> De hecho en el manual habla de otras operaciones como MERGE y otras cosas >> que se suponía que eran exclusivos de Oracle, pero ya vez que DB2 también lo >> soporta. >> >> >> >> Se puede utilizar el fetch con el SQL lnteractivo...Select * from tabla >> where campo = 'X' fetch first 5 rows only...y funciona inclusive con un >> Insert que se alimenta de un sub-select con la clausula fetch. >> >> >> >> Pero gracias de todos modos y agradezco tu interés. >> >> >> >> Saludos!! >> >> ------------------------------ >> >> ____________________________________________________ >> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) >> Forum.Help400 © Publicaciones Help400, S.L. >> >> >> ____________________________________________________ >> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) >> Forum.Help400 © Publicaciones Help400, S.L. >> > > ------------------------------ > > ____________________________________________________ > Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) > Forum.Help400 © Publicaciones Help400, S.L. > > > ____________________________________________________ > Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) > Forum.Help400 © Publicaciones Help400, S.L. >
____________________________________________________ Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.

