entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

2votos

Buenos días,

Soy nuevo usuario del foro y acudo en busca de algo de ayuda con un tema al que no le encuentro la vuelta.

Tengo que relacionar dos tablas de una base de datos MySQL de la siguiente manera.

La primera tabla es "persona_encuestada" con los campos:

id_persona_encuestada
nombre
respuesta
id_encuestador

Y la segunda tabla es "encuestadores" con los campos:

id_encuestador
nombre

Lo que yo quiero es una consulta que muestre los datos de la primera tabla pero en lugar de mostrar el id del encuestador muestre su nombre, que tomaría de la segunda tabla.

Mi consulta actual es la siguiente:

SELECT * FROM persona_encuestada AS pe INNER JOIN encuestadores AS en ON me.id_encuestador=en.id_encuestador  

El problema viene dado por el hecho de que en las dos tablas hay un campo llamado "nombre" que realidad tienen valores diferentes y cuando quiero mostrar los datos solo recibo el nombre de la persona encuestada y no el del encuestador.

¿Alguna idea?

Desde ya muchas gracias.

0voto

xedux comentado

Gracias a ambos por vuestras respuestas. Me habéis ayudado mucho.

Un saludo!

2 Respuestas

4votos

marta_vina Puntos770

Hola,

Además de lo que te comenta carlossevi de poner las columnas que quieres recuperar, deberías ponerle un alias a las columnas de nombre, sino no te las recuperará bien.

SELECT
    pe.idpersonaencuestada,
    pe.nombre AS nombrePE,
    pe.respuesta,
    en.nombre AS nombreEN
FROM persona_encuestada AS pe 
INNER JOIN encuestadores AS en ON pe.id_encuestador = en.id_encuestador;

Así sabrá que no son el mismo campo y te dará el valor del nombre de cada una de las tablas.
Espero que te haya servido.

2votos

carlossevi Puntos63580

Prueba a definir qué columnas quieres recibir en lugar de utilizar el asterisco *. Por ejemplo:

SELECT
    pe.idpersonaencuestada,
    pe.nombre,
    pe.respuesta,
    en.nombre
FROM persona_encuestada AS pe 
INNER JOIN encuestadores AS en ON pe.id_encuestador = en.id_encuestador

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta