[RESUELTO] Concatenar valores vacios en una vista

Discute sobre las herramientas de la base de datos

[RESUELTO] Concatenar valores vacios en una vista

Notapor Trempat » Mar Oct 02, 2018 7:52 pm

Buenas,

Des de una vista quiero concatenar los nombres y apellidos de una tabla de la siguiente manera:

SELECT "ID", "Persones"."Nom" || ' ' || "Persones"."Cognom1" || ' ' || "Persones"."Cognom2" FROM "Persones"


Pero en el resultado obtengo campos en blanco en la segunda columna, para los registros que no tienen valor en 'Cognom2'

Como puedo resolver para obtener todos los valores?

Muchas gracias
Última edición por Trempat el Dom Oct 07, 2018 12:50 pm, editado 1 vez en total
LibreOffice 6.0.2.1 en Windows 10 Home
Trempat
 
Mensajes: 5
Registrado: Mar Oct 02, 2018 7:44 pm

Re: Concatenar valores vacios en una vista

Notapor Longi » Mié Oct 03, 2018 1:53 pm

Buenas!

A veces con una simple búsqueda en este foro ya es suficiente.(para eso se pide que los títulos de los hilos sean lo más concisos y descriptivos posible).
A veces las búsquedas las complemento con google.
Echa un vistazo a esto:

https://forum.openoffice.org/es/forum/viewtopic.php?f=32&t=3946&start=0

Un saludo! ;)
Openoffice 4.1.5, en Windows 10
Openoffice 4.1.3, en Windows 7
Libreoffice 6.0, en Windows 10
Longi
 
Mensajes: 540
Registrado: Dom Ene 20, 2013 9:05 pm
Ubicación: Ourense, Galicia, España

Re: Concatenar valores vacios en una vista

Notapor Trempat » Dom Oct 07, 2018 12:48 pm

Tienes razón... encontré cómo hacerlo, però no lo comuniqué en el foro... mil disculpas!!
LibreOffice 6.0.2.1 en Windows 10 Home
Trempat
 
Mensajes: 5
Registrado: Mar Oct 02, 2018 7:44 pm

Re: [RESUELTO] Concatenar valores vacios en una vista

Notapor Urxvt » Mar Oct 09, 2018 2:05 pm

Yo lo que hago es usar COALESCE:

Código: Seleccionar todo   Expandir vistaContraer vista
SELECT COALESCE ( "Cognoms" || ', ' || "Nom", "Nom" ) FROM ... ORDER BY ... ASC


No sé si es correcto hacerlo así, pero me funciona muy bien. Concatena el apellido + una coma separadora con espacio + el nombre. En caso de que la concatenación no tenga valor y quede vacío, mostrará únicamente el nombre, que es un campo que siempre tengo rellenado (porque si no es nombre particular es nombre de empresa).

Y lo curioso es que para ordenar datos de un formulario también me funciona, poniéndolo en las "Propiedades del formulario" > "Ordenar", así:

Código: Seleccionar todo   Expandir vistaContraer vista
COALESCE ( "Cognoms" || ', ' || "Nom", "Nom" ) ASC


¡Saludos!
Kubuntu + LibreOffice 4.2 / Debian 9 & i3wm + LibreOffice 5.2.7.2
Urxvt
 
Mensajes: 39
Registrado: Vie Mar 10, 2017 10:13 pm


Volver a Base

¿Quién está conectado?

Usuarios navegando por este Foro: Exabot [Bot] y 4 invitados