Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   concatenar resultado de una consulta (https://www.clubdelphi.com/foros/showthread.php?t=60884)

carlo_acp 17-10-2008 01:45:26

concatenar resultado de una consulta
 
hola amigos, tengo esta consulta si se puede hacer en SQL, el resultado de una consulta SELECT, si se puede hacer q el resultado en vez que muestre por lineas, me lo de en una sola linea concatenando los resultados.

codigo nombre pais
001 juan peru
002 pedro brasil
003 miguel chile
004 marco peru

SELECT nombre from ..... where pais='peru'
resultado = 'juan marco'

se puede hacer esto? .
gracias.

enecumene 17-10-2008 01:49:33

Hola,

Código SQL [-]
Select Nombre, Pais from tabla where pais =´Peru'

Mostrar el resultado:

Código Delphi [-]
Edit1.Text := TablaNombre.asstring+' '+TablaPais.asstring;

o tambien puede ser:

Código SQL [-]
Select (Nombre || Pais) as Salida where tabla where pais =  'Peru';

o

Código SQL [-]
Select CONCAT(Nombre, Pais) as Salida where tabla where pais =  'Peru';


Saludos.

hecospina 17-10-2008 22:59:49

Creo que nuestro compañero no necesita concatenar el nombre de la persona y el pais sino cada una de los registros que genere la consulta

por ejemplo si para el pais Peru se tiene la siguiente respuesta

Nombre
Juan
Pedro
Pablo
Mateo
Marcos

Lo que requiere es que le aparezca

Juan Pedro Pablo Mateo Marcos

Desde SQL lo he intentado y no he logrado hacerlo, se debe tener en cuenta el tipo de dato donde se almacenara esta informacion ya que el limite de los campos char o varchar es de 254 caracteres o algo asi y si la respuesta contiene muchos registros obviara los que se encuentren despues del caracter 254 o aparecera un error

Nota

creo que hay un error en los dos ultimos sql aparece ....where tabla..., deberia ser from tabla

carlo_acp 18-10-2008 04:20:53

Exactamente como dices lo que yo necesito es que el resultado de la consulta sea en una sola linea. aclaro la consulta.

CODIGO NOMBRE PAIS
001 juan peru
002 pedro brasil
003 miguel chile
004 marco peru

SELECT nombre from MiTabla where PAIS='peru'
el resultado seria

juan
marco

pero yo necesito que la respuesta de la consulta me de = 'juan marco'.

TOPX 18-10-2008 04:58:15

Hola,

¿En qué motor de base de datos?

carlo_acp 20-10-2008 04:02:47

hola topx,
trabajo con firebird 2.1, con dbexpress.

jorge82 20-10-2008 07:21:23

El compañero Jhonny ha publicado en su blog algunas características de Firebird 2.1, entre ellas la función List, que creo es la que te puede servir.

carlo_acp 20-10-2008 21:10:00

gracias jorge, eso era lo q estaba buscando, agradecido a todos por su interes y apoyo.


La franja horaria es GMT +2. Ahora son las 18:00:06.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi