sql >> Base de Datos >  >> RDS >> Mysql

cómo seleccionar campos de diferentes bases de datos con la misma tabla y nombre de campo

Puede prefijar los nombres de las tablas con el nombre de la base de datos para identificar las dos tablas con nombres similares. Luego puede usar ese nombre de tabla completamente calificado para hacer referencia a los campos con nombres similares.

Entonces, sin alias:

select db1.table1.id, db1.table1.value1, db2.table1.value1
from db1.table1 inner join db2.table1 on db1.table1.id = db2.table1.id

y con alias

select t1.id, t1.value1, t2.value1
from db1.table1 as t1 inner join db2.table1 as t2 on t1.id = t2.id

También es posible que desee crear un alias para las columnas seleccionadas para que su línea de selección se convierta en:

select t1.id as id, t1.value1 as value_from_db1, t2.value1 as value_from_db2