Skip site navigation (1) Skip section navigation (2)

Re: [pgsql-es-ayuda] RE: [pgsql-es-ayuda] RE?==?iso-8859-1?Q?: [pgsql-es-ayuda] Duda con concatenación de texto

From: Guillermo Muñoz <guillermo(dot)munoz(at)grupotekne(dot)com(dot)ar>
To: "MIGUEL CANCHAS" <mcanchas(at)tsr(dot)com(dot)pe>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: [pgsql-es-ayuda] RE: [pgsql-es-ayuda] RE?==?iso-8859-1?Q?: [pgsql-es-ayuda] Duda con concatenación de texto
Date: 2007-10-16 14:07:17
Message-ID: 007c01c80ffd$dc8315e0$2601010a@gg07030802 (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
Si la vista ya la tenes creada, hace un drop VIEW "public"."vdatos_vi";
aparentemente no te esta dejando porque el campo tipo_documento ya esta en 
la vista con otro tipo de dato

Saludos

----- Original Message ----- 
From: "MIGUEL CANCHAS" <mcanchas(at)tsr(dot)com(dot)pe>
To: "'Guillermo Muñoz'" <guillermo(dot)munoz(at)grupotekne(dot)com(dot)ar>; "MIGUEL 
CANCHAS" <mcanchas(at)tsr(dot)com(dot)pe>; <pgsql-es-ayuda(at)postgresql(dot)org>
Sent: Tuesday, October 16, 2007 10:53 AM
Subject: [pgsql-es-ayuda] RE: [pgsql-es-ayuda] RE: [pgsql-es-ayuda] Duda con 
concatenación de texto




-----Mensaje original-----
De: Guillermo Muñoz [mailto:guillermo(dot)munoz(at)grupotekne(dot)com(dot)ar]
Enviado el: Martes, 16 de Octubre de 2007 08:44 a.m.
Para: MIGUEL CANCHAS; pgsql-es-ayuda(at)postgresql(dot)org
Asunto: Re: [pgsql-es-ayuda] RE: [pgsql-es-ayuda] Duda con concatenación
de texto


>El coalesce me parece bien, pero yo lo intento poner para una vista y no me
>permite, a que se debe ese error o como lo podria poner para una vista ?

>GRacias
Raro, te tendria que permitir. podes postear el create de la vista?

Saludos
Guillermo Muñoz
----- Original Message ----- 
From: "MIGUEL CANCHAS" <mcanchas(at)tsr(dot)com(dot)pe>
To: <pgsql-es-ayuda(at)postgresql(dot)org>
Sent: Tuesday, October 16, 2007 10:30 AM
Subject: [pgsql-es-ayuda] RE: [pgsql-es-ayuda] Duda con concatenación de
texto




-----Mensaje original-----
De: Yosip Abraham Curiel Jiménez [mailto:snake77se(at)gmail(dot)com]
Enviado el: Martes, 16 de Octubre de 2007 07:37 a.m.
Para: mortega(at)tc(dot)com(dot)ve
CC: postgreSQL
Asunto: Re: [pgsql-es-ayuda] Duda con concatenación de texto




On 10/16/07, Miguel Ortega < mortega(at)tc(dot)com(dot)ve <mailto:mortega(at)tc(dot)com(dot)ve> >
wrote:

Yosip Abraham Curiel Jiménez escribió:
> Hola a todos estaba haciendo unos query para depurar una data, y
> necesitaba hacer un campo texto con otra serie de campos de otra
> tabla, estaba usando case when para decidir pero me esta pasando que
> cuando uno de los campos es empty string no concatena nada, es decir
> me viene vacio el resultado.
>
>  select case
>         when trim(ed.nomcorrec) || ' ' || trim(ed.ape1corr) || ' ' ||
> trim(ed.ape2corr) != '' then
>             trim(ed.nomcorrec) || ' ' || trim(ed.ape1corr) || ' ' ||
> trim( ed.ape2corr)
>         when trim(ed.nomprop) || ' ' || trim( ed.ape1prop) || ' ' ||
> trim(ed.ape2prop) != '' then
>             trim(ed.nomprop) || ' ' || trim(ed.ape1prop) || ' ' ||
> trim( ed.ape2prop)
>         else
>             ''
>     end as nombre from xxx
>
> Lo que me di cuenta fue que el tipo de dato es "text" no es varchar no
> se si ese tipo de dato tiene algun inconveniente.
>
> gracias de antemano,
>
>
> --
> Yosip Curiel (Snake77SE)
Hola....

Creo que te conviene utilizar la funcion COALESCE con todos los campos
de texto... Si no me equivoco, si haces SELECT 'Hola Mundo!!' || Null;
te retornara Null; si utilizas SELECT 'Hola Mundo!!' ||
COALESCE(Null,''), te devolvera "Hola Mundo!!" como debe ser....
Investiga un poco en base a lo que te menciono y haz las pruebas
pertinentes...

Saludos

--
_________________________________________
Miguel A. Ortega B.
Analista de Sistemas y Soporte a Usuarios
<0416 - 642 12 26> / < mortega(at)tc(dot)com(dot)ve <mailto:mortega(at)tc(dot)com(dot)ve> >
Technologies Consulting C.A.




Si ya me funcinó eran los nulos exactamente muchas gracias a todos...

-- 
Yosip Curiel (Snake77SE)

El coalesce me parece bien, pero yo lo intento poner para una vista y no me
permite, a que se debe ese error o como lo podria poner para una vista ?

GRacias


[MIGUEL CANCHAS]


CREATE OR REPLACE VIEW "public"."vdatos_vi" (
    tipo_documento,
    tipo_ingreso,
    nombre_almacen,
    itemvi,
    idtipo_ingreso,
    idocompra,
    itemoc,
    idpedido,
    idpartida,
    guiarem,
    idhilo,
    lote,
    humedad,
    envase,
    envase_cantidad,
    tipo,
    tipo_cantidad,
    peso_bruto,
    peso_neto,
    peso_guia,
    tipo_cono,
    origen,
    ubica,
    idvihilo,
    idalmacen,
    fecha_emision,
    idocompra1,
    idopedido,
    idtdoc,
    talonario,
    ndocum,
    fecha_ingreso,
    idemisor,
    idreceptor,
    idprop,
    idoperario,
    fecha_pesado,
    hora_pesado,
    titulo_hilo,
    desc_hilo,
    nombre_emisor,
    nombre_receptor,
    nombre_propietario)
AS
SELECT coalesce(mtipo_documento.tipo_documento,'') as tipo_documento,
coalesce(mtipo_ingreso.tipo_ingreso,'')as tipo_ingreso,
    malmacen.nombre_almacen, vihilos2.itemvi, vihilos2.idtipo_ingreso,
    vihilos2.idocompra, vihilos2.itemoc, vihilos2.idpedido,
vihilos2.idpartida,
    vihilos2.guiarem, vihilos2.idhilo, vihilos2.lote, vihilos2.humedad,
    vihilos2.envase, vihilos2.envase_cantidad, vihilos2.tipo,
    vihilos2.tipo_cantidad, vihilos2.peso_bruto, vihilos2.peso_neto,
    vihilos2.peso_guia, vihilos2.tipo_cono, vihilos2.origen, vihilos2.ubica,
    vihilos1.idvihilo, vihilos1.idalmacen, vihilos1.fecha_emision,
    vihilos1.idocompra AS idocompra1, vihilos1.idopedido, vihilos1.idtdoc,
    vihilos1.talonario, vihilos1.ndocum, vihilos1.fecha_ingreso,
    vihilos1.idemisor, vihilos1.idreceptor, vihilos1.idprop,
    vihilos1.idoperario, vihilos1.fecha_pesado, vihilos1.hora_pesado,
    mhilos.titulo_hilo, mhilos.desc_hilo, emisor.nomcliente AS
nombre_emisor,
    receptor.nomcliente AS nombre_receptor, propietario.nomcliente AS
nombre_propietario
FROM ((((((((vihilos1 LEFT JOIN vihilos2 ON ((vihilos1.idvihilo =
    vihilos2.idvihilo))) LEFT JOIN malmacen ON ((vihilos1.idalmacen =
    malmacen.idalmacen))) LEFT JOIN mtipo_documento ON ((vihilos1.idtdoc =
    mtipo_documento.idtdoc))) LEFT JOIN mtipo_ingreso ON
    ((vihilos2.idtipo_ingreso = mtipo_ingreso.idtipo_ingreso))) LEFT JOIN
    mhilos ON ((vihilos2.idhilo = mhilos.idhilo))) LEFT JOIN mclientes
emisor
    ON ((vihilos1.idemisor = emisor.idcliente))) LEFT JOIN mclientes
receptor
    ON ((vihilos1.idreceptor = receptor.idcliente))) LEFT JOIN mclientes
    propietario ON ((vihilos1.idprop = propietario.idcliente)))
ORDER BY vihilos1.idvihilo, vihilos2.itemvi;

el error es  :
ERROR:  cannot change data type of view column "tipo_documento"
--
TIP 10: no uses HTML en tu pregunta, seguro que quien responda no podrá 
leerlo


-- 
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.488 / Virus Database: 269.14.8/1066 - Release Date: 12/10/2007 
11:10 a.m.



In response to

pgsql-es-ayuda by date

Next:From: Juan MartínezDate: 2007-10-16 14:32:33
Subject: Re: ayuda con copy
Previous:From: MIGUEL CANCHASDate: 2007-10-16 13:53:46
Subject: RE: [pgsql-es-ayuda] RE: [pgsql-es-ay?==?iso-8859-1?Q?uda] Duda con concatenación de texto

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group