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

No funciona

Estas en el tema de No funciona en el foro de Mysql en Foros del Web. Hola disculpen la molestia es que tengo esta consulta pero no me funciona me sale error de anbiguedad pero no se por que si estoy ...
  #1 (permalink)  
Antiguo 25/07/2011, 07:33
Avatar de JeMaGa  
Fecha de Ingreso: julio-2011
Ubicación: Bogota
Mensajes: 430
Antigüedad: 13 años, 4 meses
Puntos: 4
Pregunta No funciona

Hola disculpen la molestia es que tengo esta consulta pero no me funciona me sale error de anbiguedad pero no se por que si estoy uniendo 2 tablas con el campo en comun!! sera posible que me ayuden a detectar el error Agradesco mucho la ayuda

SELECT `Cod.Persona` FROM `personas` INNER JOIN `firma_conocimiento` ON `personas`.`Cod.Persona` = `firma_conocimiento`.`Cod.Persona`
WHERE `Nombre_Persona` = 'Luz Gomez'

MySQL ha dicho:

#1052 - Column 'Cod.Persona' in field list is ambiguous
  #2 (permalink)  
Antiguo 25/07/2011, 07:35
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: No funciona

Código SQL:
Ver original
  1. SELECT `personas`.`Cod.Persona` FROM `personas` INNER JOIN `firma_conocimiento` ON `personas`.`Cod.Persona` = `firma_conocimiento`.`Cod.Persona`
  2. WHERE `Nombre_Persona` = 'Luz Gomez'
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 25/07/2011, 07:54
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 10 meses
Puntos: 447
Respuesta: No funciona

Hola JeMaGa:

Con permiso del compañero Huesos52, quien ya te dio la respuesta a tu problema, me gustaría explicarte dónde está el error, para pues si no lo puedes deducir es posible que te vuelva a ocurrir en un futuro. En lo particular prefiero explicar esto en lugar de sólo dar la respuesta.

Cuando existe un error de ambigüedad, se refiere que existe una o más columnas en donde el DBMS no puede determinar a qué tabla pertenece. En tu SELECT estás utilizando el campo `Cod.Persona`, pero este campo existe tanto en tu tabla `personas` como en tu tabla `firma_conocimiento`, por lo tanto es necesario que indiques a qué tabla pertenece, anteponiendo al nombre del campo el nombre de la tabla, tal como lo indica Huesos52:

Código:
`personas`.`Cod.Persona`
Es conveniente que cuando utilices JOIN's, antepongas el nombre de la tabla al que pertenece a cualquier campo que utilices. En el where por ejemplo estás poniendo esto:

Código:
`Nombre_Persona` = 'Luz Gomez'
Donde no estás especificando a qué tabla pertenece Nombre_Persona. En este caso podría darte el mismo problema si fuera el caso de que existiera en ambas tablas. Puedes hacer uso de Alias para acortar los nombres de tus tablas y facilitar su codificación.

Saludos
Leo.
  #4 (permalink)  
Antiguo 25/07/2011, 07:58
Avatar de JeMaGa  
Fecha de Ingreso: julio-2011
Ubicación: Bogota
Mensajes: 430
Antigüedad: 13 años, 4 meses
Puntos: 4
Respuesta: No funciona

Gracias por sus aportes!!! :)

Etiquetas: join, select, sql, tabla
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 13:52.