SQL - unir campos

 
Vista:

unir campos

Publicado por jose (1 intervención) el 14/01/2005 20:10:01
Hola tengo un campo dato1 y un campo dato2 y otro campo dato3, como haria para que se coloque en un solo campo el dato2 y dato3 y de esta forma compararlos con el dato1..es decir, p0or ejemplo un telefono, el telefono tiene el numero de area 0212 y el numero 5203253 como haria para que estos campos sean uno solo? asi..02125203253 y luego que se compare con otra tabla?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:unir campos

Publicado por Martin (2 intervenciones) el 14/01/2005 20:38:14
Probaste algo asi?:

SELECT Campo1, Campo2, Campo1 & Campo2.VDS as Concatenados
FROM Tabla;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:unir campos

Publicado por jose (1 intervención) el 14/01/2005 20:49:29
no amigo no me funciona!!! ya que debo unir esos dos campos y luego compararlos con otro de otra tabla

gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:unir campos

Publicado por Isaías Islas (5072 intervenciones) el 14/01/2005 21:25:48
¿Compararlos contra otra tabla, para que?

SELECT CAMPO1+CAMPO2 FROM MYTABLA

Por ejemplo, para comparar si existen en la otra tabla
SELECT * FROM MyTabla WHERE CAMPO1+CAMPO2 in(SELECT otracolumna FROM MYTABLA2)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:unir campos

Publicado por david (19 intervenciones) el 17/01/2005 18:13:29
Pero yo hice esta misma sentencia y no corre porque???

SELECT PTS_CDRS.*
FROM PTS_CDRS, PTS_PUBLIC_PHONES
WHERE PTS_CDRS.CALLING_NUMBER = (PTS_PUBLIC_PHONES.AREACODE)+(PTS_PUBLIC_PHONES.PHONENUMBER)
AND (PTS_CDRS.STARTTIME = TO_DATE('16/01/2005', 'DD/MM/YYYY'))
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:unir campos

Publicado por Jaime (17 intervenciones) el 17/01/2005 18:50:57
David,

Los campos PTS_PUBLIC_PHONES.AREACODE y PTS_PUBLIC_PHONES.PHONENUMBER Son numericos o de tipo texto?
Para que la sentencia funcione con el resultado que creo espera recibir, deben ser de tipo texto de lo contrario simplemente a un valor numerico le sumara otro y no se obtiene la cadena de 'caracters' esperada.
Por ejemplo si los valores de los campos son numericos y valen respectiva mente 9800 y 6895236, la suma de la sentencia devolvera :
6905036, pero si son de tipo texto devolvera: 98006895236.

Según veo lo que Ud necesita es el segundo resultado. Cierto?

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:unir campos

Publicado por david (1 intervención) el 17/01/2005 19:47:33
Si son numericos y aun nada!!! los multiuplico por ceros y nada!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:unir campos

Publicado por Isaías Islas (5072 intervenciones) el 17/01/2005 22:14:04
Entonces si son NUMERICAS, conviertalas a caracteres

WHERE CONVERT(VARCHAR, MYCOL1) + CONVERT(VARCHAR,MYCOL2) = CONVERT(VARCHAR,MYCOL3)

¿funciona?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:unir campos

Publicado por Jaime (17 intervenciones) el 18/01/2005 00:09:48

David,

No veo porque ha de multiplicarlas por cero, Isias tiene razón lo que hay que hacer es convertir a caracter, pero no estoy seguro de que la función convert( Tipo de datos destino, dato a convertir ) funcione para su base de datos.

Utiliza Oracle ¿Cierto?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:unir campos

Publicado por Liliana (426 intervenciones) el 19/01/2005 11:09:08
Imagino que de lo que habla David es de multiplicar uno de los datos para darle la longitud que desea, sin mantener la propiedad de numérico, algo así:

DECLARE @cod smallint SELECT @cod = 123
DECLARE @nro smallint SELECT @nro = 456
SELECT @cod, @nro, @cod * 1000 + @nro
-- resultado
------ ------ -----------
123 456 123456
No sé si funciona en Oracle, pero es una alternativa al CONVERT.
Liliana.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:unir campos

Publicado por Jose @lejandro Sanguinetti (9 intervenciones) el 15/02/2005 21:34:12
Mire para que aprenda es así: Primero se verifica que los campos no sean numericos por que al tratar de aplicar el signo '+' lo que vamos a hacer es sumarlos por ello se aplica el "CAST" o el "CONVERT" despues de pasarlos a un tipo varchar o texto hacemos los siguiente "SELECT (Tabla.Campo1 + Tabla.Campo2) as [Número Completo] From MiTabla Where MiTabla.Campo=OtraTabla.Campo luego si quieres compararlo debes verificar si el dato con el que lo vas a comparar es numerico o tipo texto por que esta consulta de arroja un set tipo texto entonces al compararlo de con un dato númerico debes volver a convertirlo con las funciones que ya te di. sino lo comparas asi que no lo considero por que mayormente no comparo cadenas es muy renuente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:unir tablas de dos a uno

Publicado por juan carlos (2 intervenciones) el 18/01/2005 21:10:25
que tal me justaria saber cual seria la sentecia en sql para poder unir dos tablas o tres en una sola...ejem..
cdarticulo. unimed peso
leche lat. 450

desearia que fuera

leche lat 450 -------------> en una sola.

gracias por su compresion estrare esperando ....su respuesta


Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar