Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   MySQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=21)
-   -   Unir Campos en una Consulta ? (https://www.clubdelphi.com/foros/showthread.php?t=31376)

Nathan 05-05-2006 20:01:29

Unir Campos en una Consulta ?
 
Hola Gente,
bueno, la duda es la siguente es posible unir campos de una tabla para hacer una consulta por ejemplo : 'la tabla persona, con su campoA nombre y campoB apellidos'.
Es posible saber su Id si solo tengo una cadena cad = NombreCompleto(Nombre+Apellido).
Nombre = Carla; Apellido = Jimenez;
Intente haciendo asi :
Código SQL [-]
Select Id from persona as p where (p.Nombre + p.Apellido) = 'Carla Jimenez'

pero no sirve :(


De antemano gracias.


Saludos.

JELIRM 06-05-2006 00:20:35

Bueno pues creo que no te has dado a explicar mucho pero veremos si te entendi dices que si puedes saber al campo si tienes el otro campo perteneciente a una misma tabla, de ser Asi Claro que se puede, esa es la logica de una tabla..
la instruccion sql seria

Código:

Select id where nombre="juan" and apellido ="Ramírez"
y esa consulta la puedes tomar de un string si asi lo quisieras metiendole parametros a la consulta.

JELIRM 06-05-2006 00:30:41

Disculpa eso ya lo habias mira lo que tienes que hacer es lo siguiente,
abres la consulta con un query como lo que sigue:

Código:


Query1.Close;
Query1.SQL.Clear;
Query1.Add.Sql('Select Id from Tabla where nombre='''+(VariableNombreString)+'''and apellido='''+(VariableApellido)+ '''');
ExecuteSql;
Query1.Open;

incluso lo podes hacer por medio de un EditText en lugar de la variable que te menciono para lo que tomes como el valor que le queres meter a la consulta, eso es meter parametros a la consulta.

Nathan 06-05-2006 01:02:54

Gracias por su respuesta pero creo que me falto explicar un poco mas :p
bueno, es que solo me dan el nombre completo(nombre y apellidos juntos) en una variable y me piden hallar su Id en la tabla persona.

TPersona
Id : int
Nombre : char
Apellidos : char


Sera que esto es posible :confused:

roman 06-05-2006 07:42:01

En principio puede resultarte como lo pensaste desde un principio. El problema es que en MySql no puedes concantenar dos cadenas con el operador +, tienes que usar la función concat:

Código SQL [-]
Select Id from persona as p where
concat(p.Nombre, ' ', p.Apellido) = 'Carla Jimenez'

Observa que, además, hay que insertar un espacio entre nombre y apellido.

// Saludos

Nathan 06-05-2006 18:23:33

Gracias Roman es lo que andaba buscando. :)


La franja horaria es GMT +2. Ahora son las 15:33:52.

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