Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/04/2009, 17:35
Avatar de brygom
brygom
 
Fecha de Ingreso: marzo-2008
Mensajes: 79
Antigüedad: 16 años, 1 mes
Puntos: 0
Buscar datos en varias tablas a la vez

Que tal!
Espero me puedan ayudar.
Necesito realizar una busqueda en distintas tablas dentro de una base de datos, lo que requiero es que en todas las tablas se busque un mismo numero de tarjeta si existe entonces obtener los datos de esa tabla. Lo estoy intentado asi:

Código:
select * from bf01, bf04 where bf01.NoTarjetabf01 = 1 or bf04.NoTarjetabf04 = 1
Pero esta consulta me trae resultados repetidos de la tabla bf01 y me trae otros resultados que no tienen el mismo numero de tarjeta de bf04.
Existe alguna forma de realizar esto de una forma optima ya que son muchas tablas con gran cantidad de datos en donde hay que buscar?

Otra forma que he intentado es esta:

Código:
SELECT * FROM bf01
LEFT OUTER JOIN bf04 ON bf01.NoTarjetabf01=bf04.NoTarjetabf04
LEFT OUTER JOIN bf05 ON bf04.NoTarjetabf04=bf05.NoTarjetabf05
LEFT OUTER JOIN bf06 ON bf05.NoTarjetabf05=bf06.NoTarjetabf06
LEFT OUTER JOIN bf14 ON bf06.NoTarjetabf06=bf14.NoTarjetabf14
WHERE bf01.NoTarjetabf01 = 1
Pero nada más me busca en la tabla bf01, el caso es que puede que el numero indicado no exista en la bf01 pero si exista en la bf04 ó bf05 ó bf06 y así



Gracias!