Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Problema en UNION SELECT

Estas en el tema de Problema en UNION SELECT en el foro de Bases de Datos General en Foros del Web. Hola tengo este problema en mi busqueda uso MYSQL + PHP , la idea es buscar en dos tablas un nombre, pero me da el ...
  #1 (permalink)  
Antiguo 09/09/2004, 18:12
 
Fecha de Ingreso: julio-2004
Mensajes: 47
Antigüedad: 19 años, 9 meses
Puntos: 0
Problema en UNION SELECT

Hola tengo este problema en mi busqueda uso MYSQL + PHP , la idea es buscar en dos tablas un nombre, pero me da el siguiente error : !! MySQL ha dicho:

#1064 - You have an error in your SQL syntax near 'UNION SELECT datosfinal2.id, datosfinal2.nombres, datosfinal2.apellidos
FROM da' at line 5
!!!

ESTA ES MI SENTENCIA

SELECT datosfinal.id, datosfinal.nombres, datosfinal.apellidos
FROM datosfinal
WHERE (
datosfinal.nombres
LIKE '%luis%'
)
UNION SELECT datosfinal2.id, datosfinal2.nombres, datosfinal2.apellidos
FROM datosfinal2
WHERE (
datosfinal2.nombres
LIKE '%luis%'
)
  #2 (permalink)  
Antiguo 10/09/2004, 02:35
Avatar de Vice  
Fecha de Ingreso: agosto-2003
Mensajes: 613
Antigüedad: 20 años, 9 meses
Puntos: 2
El único problema que le veo a esta instrucción está en que los campos no sean exactamente del mismo tipo. Me explico: para que la union funciones, las selects deben devolver el mismo número de datos y de igual tipo en ambas selects.
Por otro lado, para evitar problemas, ponle alias iguales en ambos selects.
Un saludo.
  #3 (permalink)  
Antiguo 10/09/2004, 10:00
 
Fecha de Ingreso: julio-2004
Mensajes: 47
Antigüedad: 19 años, 9 meses
Puntos: 0
Sobre los Select en UNION

Hola, mira las dos tablas son datosfinal y datosfinal 2 .
Datosfinal tiene 13 columnas y Datosfinal2 tiene 17 columnas , ahora ambas tablas tienen 3 columnas iguales que son ID, nombres y apellidos entonces como haria para buscar en las dos tablas con una sola sentecia bien por ID, nombre o apellido???
  #4 (permalink)  
Antiguo 10/09/2004, 10:41
Avatar de Edypu  
Fecha de Ingreso: octubre-2003
Ubicación: La Paz - Bolivia
Mensajes: 394
Antigüedad: 20 años, 6 meses
Puntos: 1
Usa este Select :

Código:
 SELECT F1.id, F1.nombres, F1.apellidos
   FROM datosfinal F1, datosfinal F2
   WHERE F1.id=F2.id AND F1.nombres LIKE '%luis%'
Salu2
  #5 (permalink)  
Antiguo 10/09/2004, 14:33
 
Fecha de Ingreso: julio-2004
Mensajes: 47
Antigüedad: 19 años, 9 meses
Puntos: 0
en mas de dos tablas??

puede servir para consultar en 3 tablas???
  #6 (permalink)  
Antiguo 11/09/2004, 06:25
Avatar de Edypu  
Fecha de Ingreso: octubre-2003
Ubicación: La Paz - Bolivia
Mensajes: 394
Antigüedad: 20 años, 6 meses
Puntos: 1
Saludos

Cita:
SELECT F1.id, F1.nombres, F1.apellidos
FROM datosfinal F1, datosfinal F2
WHERE F1.id=F2.id AND F1.nombres LIKE '%luis%'
Claro .. lo que solo hago es dar un alias a las tablas que tienes.



ciaoooooooo
  #7 (permalink)  
Antiguo 11/09/2004, 18:20
 
Fecha de Ingreso: julio-2004
Mensajes: 47
Antigüedad: 19 años, 9 meses
Puntos: 0
en el caso de where?

Hola disculpa la insistencia, donde pones el where f1.nombres=f2.nombres como seria para una tercera tabla algo asi?? f1.nombres=f2.nombres and f3.nombres=f2.nombres ?

gracias de antemano.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:00.