Uhmm... no recuerdo que exista el lpad pero con este lo puedes hacer mas facil
select to_char(field,'FM000') *-------------------------------------------------------* *-Edwin Quijada *-Developer DataBase *-JQ Microsistemas *-Soporte PostgreSQL *-www.jqmicrosistemas.com *-809-849-8087 *-------------------------------------------------------* Date: Mon, 22 Mar 2010 13:44:06 -0430 Subject: Re: [pgsql-es-ayuda] longitud tipo dato serial From: zah...@gmail.com To: ave...@gmail.com CC: gro...@sadaic.org.ar; pgsql-es-ayuda@postgresql.org Te leiste la documentaci¾n? En tu caso seria: Para mostrar Select lpad(5::varchar,3,'0'); Suerte! :: HDS Consultores TI Servidores | Redes | Programacion | GNU/Linux | PostgreSQL Web: http://hdsconsultores.net Blog: http://codigohds.com Linux User #:320363 2010/3/22 Victor Avenda±o <ave...@gmail.com> Entonces seria algo asÝ? lpad(serial, 4, 00) El 22 de marzo de 2010 11:09, Hector R. De los Santos <zah...@gmail.com> escribi¾: Seguimos hablando de lo mismo?? No entendi que quisiste decir con esta opinion, no he recomendado un leguaje diferente al sql, agregar esa funcion a un insert no tiene nada de complejo. Aunque la verdad no recomiendo esto, lo mas sano seria dejar tus datos numericos y hacer el lpad cuando vayas a mostrar la informacion. El 22/03/10, Gustavo Rosso <gro...@sadaic.org.ar> escribi¾: > Buen dia. > Depende como esta escrito el insert, me parece que no todos los > lenguajes compilan lpad(), por eso me parece que, salvo excepciones, las > funciones de Postgres las dejaria que la realize el. > Es una opinion. > Saludos > > Hector R. De los Santos escribi¾: >> Un trigger? >> Me parece que es algo demaciado simple para tener que integrarlo en un >> trigger, si deseas tener ese campo tipo Varchar y rellenarlo con >> ceros, solo basta hacer el lpad() en el INSERT. >> >> Suerte! >> >> :: HDS Consultores TI >> Servidores | Redes | Programacion | GNU/Linux | PostgreSQL >> Web: http://hdsconsultores.net >> Blog: http://codigohds.com >> Linux User #:320363 >> >> >> 2010/3/22 Gustavo Rosso <gro...@sadaic.org.ar >> <mailto:gro...@sadaic.org.ar>> >> >> >> >> á á Victor Avenda±o escribi¾: >> >> á á á á Parece que me expresÚ mal, no necesariamente necesito un tipo >> á á á á de datos, pero serÝa genial que asÝ se pudiera generar, lo que >> á á á á deseo es poder tener algo como un character varing de longitud >> á á á á 3 que sea autoincrementable, osea que se baya generando de la >> á á á á siguiente manera 001, 002, 003..... 012,013,014, ... etc >> á á á á debido a que necesito grabar esos 3 caracteres y como serial >> á á á á no me conserva los ceros, quizas otra solucion seria poder >> á á á á guardar el serial pero con los ceros delante cosa que yo al >> á á á á traerlos o exportarlos siempre pueda manipular esos 3 >> á á á á caracteres... me explico??? >> >> á á á á 2010/3/22 Ing. Marcos Ortiz Valmaseda <mlor...@uci.cu >> á á á á <mailto:mlor...@uci.cu> <mailto:mlor...@uci.cu >> á á á á <mailto:mlor...@uci.cu>>> >> >> >> á á á á á áVictor Avenda±o escribi¾: >> >> á á á á á á á áBuenas Lista, mi duda es: >> >> á á á á á á á áHay alguna forma de crear tipo de datos serial 3 digitos o >> á á á á á á á ámas. Me explico un campo 'codx' de tipo serial y que >> á á á á á á á áautoincremente algo asÝ 001, 002, 003. Seg·n tengo >> á á á á entendido >> á á á á á á á ápostgres incrementa 1, 2, 3, 4, 5, 6. Se puede dar la >> á á á á logitud >> á á á á á á á áo la catidad de digitos. >> >> á á á á á á á áEspero se haya entendido. >> >> á á á á á á á áGracias >> >> á á á á á áSERIAL áes un tipo de datos con un comportamiento definido; >> á á á á por lo >> á á á á á áque tendrÝas que hacer un nuevo tipo de datos, no usar Úste. >> á á á á á áPudieras implementar uno que se comportara como quieres, >> á á á á con una >> á á á á á áfunci¾n aparte que asigne esos valores que quieres. >> á á á á á áTe dejo un ejemplo de c¾mo crear un tipo de datos en >> á á á á PostgreSQL: >> á á á á á áTomado de la documentaci¾n: >> >> á á á á á áCREATE TYPE inventory_item AS ( >> á á á á á á á á áname á á á á á á text, >> á á á á á á á á ásupplier_id á áinteger, >> á á á á á á á á áprice á á á á á á ánumeric >> á á á á á á); >> >> á á á á á áC¾mo usarlo: >> >> á á á á á áCREATE TABLE on_hand ( >> á á á á á á á á á áitem á áinventory_item, >> á á á á á á á á á ácount áinteger >> á á á á á á); >> >> á á á á á áINSERT INTO on_hand VALUES (ROW('fuzzy dice', 42, 1.99), 1000); >> >> á á á á á áSaludos >> >> á á Un trigger que llame a una funcion antes del insert? >> á á Saludos! >> á á Gustavo >> >> >> á á á á á á-- >> á á á á -------------------------------------------------------- -- Ing. >> á á á á á áMarcos LuÝs OrtÝz Valmaseda á á á á á á á á á -- >> á á á á á á-- Twitter: http://twitter.com/@marcosluis2186 á á á á-- >> á á á á á á-- FreeBSD Fan/User á á á á á á á á á á á á á á á á á -- >> á á á á á á-- http://www.freebsd.org/es á á á á á á á á á á á á á-- >> á á á á á á-- Linux User # 418229 á á á á á á á á á á á á á á á á-- >> á á á á á á-- Database Architect/Administrator á á á á á á á á á -- >> á á á á á á-- PostgreSQL RDBMS á á á á á á á á á á á á á á á á á -- >> á á á á á á-- http://www.postgresql.org á á á á á á á á á á á á á-- >> á á á á á á-- http://planetpostgresql.org á á á á á á á á á á á á-- >> á á á á á á-- http://www.postgresql-es.org á á á á á á á á á á á -- >> á á á á á á-------------------------------------------------------- >> á á á á á á-- Data WareHouse -- Business Intelligence Apprentice -- >> á á á á á á-- http://www.tdwi.org á á á á á á á á á á á á á á á á-- >> á á á á á á-------------------------------------------------------- -- >> á á á á Ruby >> á á á á á áon Rails Fan/Developer á á á á á á á á á á á á-- >> á á á á á á-- http://rubyonrails.org á á á á á á á á á á á á á á -- >> á á á á á á-------------------------------------------------------- >> >> á á á á á áComunidad TÚcnica Cubana de PostgreSQL >> á á á á á áhttp://postgresql.uci.cu >> á á á á á áhttp://personas.grm.uci.cu/+marcos á á á áCentro de >> á á á á TecnologÝas de Gesti¾n de Datos (DATEC) Contacto: >> >> á á á á áCorreo: centa...@uci.cu <mailto:centa...@uci.cu> >> á á á á <mailto:centa...@uci.cu <mailto:centa...@uci.cu>> >> á á á á á á á á á á á á á á á á á á á á á á áTelf: +53 07-837-3737 >> á á á á á á á á á á á á á á á á á á á á á á á á á á á á á á+53 >> á á á á 07-837-3714 >> á á á á Universidad de las Ciencias >> >> á á á á á áInformßticas á á á áhttp://www.uci.cu >> >> >> >> >> á á á á -- >> á á á á VÝctor Avenda±o Fuentes. >> á á á á Soporte Informßtico. >> á á á á Fono: 65-484811 >> á á á á M¾vil: 09-85263743 >> á á á á E-mail: vave...@clinicapuertomontt.cl >> á á á á <mailto:vave...@clinicapuertomontt.cl> >> á á á á <mailto:vave...@clinicapuertomontt.cl >> á á á á <mailto:vave...@clinicapuertomontt.cl>>. >> á á á á www.clinicapuertomontt.cl <http://www.clinicapuertomontt.cl> >> á á á á <http://www.clinicapuertomontt.cl> >> >> á á -- >> á á TIP 4: No hagas 'kill -9' a postmaster >> >> > -- Enviado desde mi dispositivo m¾vil :: HDS Consultores TI Servidores | Redes | Programacion | GNU/Linux | PostgreSQL Web: http://hdsconsultores.net Blog: http://codigohds.com Linux User #:320363 -- TIP 2: puedes desuscribirte de todas las listas simultßneamente á á(envÝa "unregister TuDirecci¾nDeCorreo" a majord...@postgresql.org) -- VÝctor Avenda±o Fuentes. Soporte Informßtico. Fono: 65-484811 M¾vil: 09-85263743 E-mail: vave...@clinicapuertomontt.cl. www.clinicapuertomontt.cl _________________________________________________________________