• Jueves 28 de Marzo de 2024, 13:12

Autor Tema:  Tablas y Columnas  (Leído 5094 veces)

angelman7

  • Miembro activo
  • **
  • Mensajes: 25
    • Ver Perfil
Tablas y Columnas
« en: Jueves 24 de Febrero de 2011, 02:17 »
0
Cordial Saludo
tengo la una duda sobre mysql, hace tiempo no practico sql, y no me acuerdo de algunas cosas para que me colaboren, miren la situacion es esta
como hago para llamar una misma columna de dos tablas
la columna se llama A
y esta en las tablas  
docentes
y estudiantes
SELECT `A` FROM `estudiantes` INNER JOIN `docente` ON estudiantes.A = docente.A LIMIT 0 , 30

pero me sale este error
#1052 - Column 'A' in field list is ambiguous  

intente asi

SELECT * FROM `estudiantes` INNER JOIN `docente` ON estudiantes.A = docente.A LIMIT 0 , 30
fijense que cuando la pongo asi
me funciona

SELECT `A` FROM `estudiantes` INNER JOIN `docente` ON estudiantes.A = docente.A LIMIT 0 , 30  
pero asi no

ProfesorX

  • Moderador
  • ******
  • Mensajes: 796
  • Nacionalidad: mx
    • Ver Perfil
Re: Tablas y Columnas
« Respuesta #1 en: Jueves 24 de Febrero de 2011, 04:33 »
0
El error mismo te lo esta indicando

Column 'A' in field list is ambiguous

Traducido:

La columan A en la lista de campos es ambigua.

Esto se debe precisamente a que la columna A se llama igual en las dos tablas, entonces no sabe si desplegar columna A de docentes o columna A de estudiantes.

La solucion es especificar, cuando las dos columnas tienen el mismo nombre en tablas diferentes, a que tabla te refieres, retomando tu ejemplo seria algo como:

Código: SQL
  1. SELECT `estudiantes.A` FROM `estudiantes` INNER JOIN `docente` ON estudiantes.A = docente.A LIMIT 0 , 30
  2.  

Puede ser al contrario, usando docente.A en lugar de estudiantes.A, en este caso en particular no importa de que tabla tomas la columna.

Saludos :)

NOTA:
==================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
==================================================================

angelman7

  • Miembro activo
  • **
  • Mensajes: 25
    • Ver Perfil
Re: Tablas y Columnas
« Respuesta #2 en: Jueves 24 de Febrero de 2011, 23:30 »
0
Muchas Gracias por la ayuda, ahora tengo otra pregunta:
me funciona el codigo, pero el resultado es raro es decir cuando hago una consulta normal asi:

SELECT A FROM `docente` ó  `estudiantes
saldra esta tabla que son similares, con todos los datos pero si uso el comando que me dieron
A                              
99        
63
12
137
20
 2
124
134
109
127
1
3
 39
123
16
17
 66
115
128
91
121
8
13
73
131
15
22
14
125
21
   1. SELECT `estudiantes.A` FROM `estudiantes` INNER JOIN `docente` ON estudiantes.A = docente.A LIMIT 0 , 30
sale este resultado
A  A  
39 39
10 10
14 14
16 16
3 3
2 2
13 13
63 63
no se si sea el editor (phpmyadmin) o estoy cometiendo algun error en el llamado, igual muchas gracias por el dato anterior me sirvio de mucho

ProfesorX

  • Moderador
  • ******
  • Mensajes: 796
  • Nacionalidad: mx
    • Ver Perfil
Re: Tablas y Columnas
« Respuesta #3 en: Viernes 25 de Febrero de 2011, 01:31 »
0
Bueno mira, respecto a tu pregunta, no se que resultado esperas obtener, ya que solo tu sabes que datos contienen tus tablas, yo no se que dato contiene la columna A, solo te dire que cuando utilizas:

Código: SQL
  1. SELECT A FROM `estudiantes`;
  2.  

estas mostrando la columna A de todas las filas de la tabla destudiantes.

y cuando uilizas:

Código: SQL
  1. SELECT `estudiantes.A` FROM `estudiantes` INNER JOIN `docente` ON estudiantes.A = docente.A
  2.  

estas mostrando la columna A de la tabla estudiantes, pero solo aquellas filas que cumplen la condicion de ser iguales en la columna A en las dos tablas (estudiantes y docente). Si el valor de la columna A en la tabla estudiantes no es igual con algun valor de la columna A de la tabla docente, y viceversa, esa fila no se mostrara.

Espero que dicho eso te quede mas claro como funciona el Inner join

Saludos :)

NOTA:
==================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
==================================================================

angelman7

  • Miembro activo
  • **
  • Mensajes: 25
    • Ver Perfil
Re: Tablas y Columnas
« Respuesta #4 en: Martes 1 de Marzo de 2011, 17:03 »
0
muchas gracias, esos datos me ayudaron bastante, muchas gracias