Cita: entonces cuando es 0 necesito que relacione con t1 y cuando es 1 que relaciones con t3
Eso parece implicar que ese segundo campo es una FK apuntando a dos tablas distintas, y
eso es una violacion al modelo E-R.
En cualquier caso,
no existen los FROM condicionales, por lo que no se puede construir una consulta que tenga semejantes características (y creo que en realidad no se puede construir en ningún DBMS).
Lo que debemos entender es lo siguiente:
- Cada campo debe contener un único dominio (el famoso campo de existencia de un valor), por lo que si una columna es FK, debe estar apuntando a tablas que representen lo mismo, aunque los
contenidos de datos varíen.
- El único caso donde dos tablas representan esencialmente la misma entidad, pero con diferentes
instancias, es en una
herencia.
- En el caso de las herencias debe
siempre existir una entidad de jerarquía superior que actúa de "entidad padre", y es a
esa entidad donde se relaciona la tabla que posee la FK.
- En ese contexto, para obtener la relación completa en la consulta se debe vincular la primera tabla con la tabla padre, y la tabla padre con cada una de las hijas... o sea, cuatro (4) tablas.
- Intentar una consulta suprimiendo la tabla padre es posible, pero en ese caso la consulta sería doble, con un UNION.
Ejemplo:
Ahora bien, lo que quiero que te quede claro es que
si esas dos tablas no son parte de una herencia, y
no existe una tabla padre, el diseño que usas está
completamente mal. Y de eso no quedarían dudas.