From: | Juan Martínez <jeugenio(at)umcervantes(dot)cl> |
---|---|
To: | Andrés García G(dot) <garcia791107(at)gmail(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Como eliminar los espacios dentro de un SELECT cuando se usa COALESCE.. |
Date: | 2006-11-25 10:44:31 |
Message-ID: | 37922.190.44.85.94.1164451471.squirrel@correo.umcervantes.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
El Sab, 25 de Noviembre de 2006, 3:26 am, Andrés García G. escribió:
> Tengo una duda,
> [...]
>
> select id_cliente,
> CAST(coalesce(ap_pat||' '||ap_mat||' '||nombre) AS varchar(120)) AS
> nom_cli
> from clientes
> order by ap_pat, ap_mat, nombre
Esa consulta no funciona(ria). Esto por que COALESCE() requiere de dos
parametros y solo le estas pasando uno.
> mi pregunta es como se puede comprobar (mediante una funcion, por ejem) si
> los campos de apellidos son nulos para no incluir los espacios.
Utilizando la funcion COALESCE como corresponde:
SELECT id_cliente,
trim(coalesce(ap_pat,'')||' '||
coalesce(ap_mat,'')||' '||
coalesce(nombre,''))::varchar(120) AS nom_cli
FROM clientes
ORDER BY ap_pat, ap_mat, nombre;
[Sugerencia: en general no es muy buena idea tener nulos en nombres de
personas. Te sugeriria utilices el un campo como "razon social" para
cuando el cliente es una empresa, todo esto por la normalizacion]
--
Juan Martinez Linux user # 335778
Departamento de Informática 499 7934 - 499 7992
Universidad Miguel de Cervantes Mac Iver # 370 - Stgo. Centro - RM
From | Date | Subject | |
---|---|---|---|
Next Message | Carlos GR | 2006-11-25 14:33:43 | Generar funcion en C++ para PostgreSql |
Previous Message | Jaime Casanova | 2006-11-25 03:53:52 | Re: Como eliminar los espacios dentro de un SELECT cuando se usa COALESCE.. |