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

relacionar columnas es una tabla

Estas en el tema de relacionar columnas es una tabla en el foro de Mysql en Foros del Web. Buenos días foreros, practicando me encontré con un problema que no pude solucionar tengo una tabla con 4 campos id | cargo_usuario | nombre_usuario | ...
  #1 (permalink)  
Antiguo 18/08/2016, 10:34
 
Fecha de Ingreso: junio-2013
Mensajes: 68
Antigüedad: 10 años, 10 meses
Puntos: 1
relacionar columnas es una tabla

Buenos días foreros, practicando me encontré con un problema que no pude solucionar
tengo una tabla con 4 campos

id | cargo_usuario | nombre_usuario | cargo_jefe
1 2 usuario 1 1
2 1 jefe 1 0
3 3 usuario 2 2

y lo que quiero mostrar es algo así

id | usuario | nivel | nombre del jefe inmediato

1 usuario 1 | 2 | jefe 1
3 usuario 2 | 3 | usuario 1

espero y me de a entender y gracias
  #2 (permalink)  
Antiguo 18/08/2016, 11:08
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: relacionar columnas es una tabla

Es un SELECT con una doble invocación a la misma tabla. La verdad es que no tiene misterio, salvo el uso de alias... La solución la puedes encontrar en cualquier tutorial básico.
Para que te sirva, mejor postea la query tal como la tienes hecha hasta ahora y te decimos como escribirla bien.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 18/08/2016, 11:55
 
Fecha de Ingreso: junio-2013
Mensajes: 68
Antigüedad: 10 años, 10 meses
Puntos: 1
Respuesta: relacionar columnas es una tabla

Código MySQL:
Ver original
  1. FROM usuarios
  2. WHERE  cargo_jefe = cargo_usuario
es mas o menos lo que he echo

Última edición por gnzsoloyo; 18/08/2016 a las 14:45
  #4 (permalink)  
Antiguo 18/08/2016, 14:50
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: relacionar columnas es una tabla

Bueno, es algo tan basico como:
Código MySQL:
Ver original
  1. SELECT u1.id, u1.cargo_usuario, u1.nombre_usuario, u2.nombre_usuario jefe_inmediato
  2. FROM usuarios u1 INNER JOIN usuarios u2 ON u1.id = u2.cargo_jefe
  3. WHERE u1.cargo_jefe <> 0;

Prueba y veamos si funciona bien.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 19/08/2016, 17:39
 
Fecha de Ingreso: junio-2013
Mensajes: 68
Antigüedad: 10 años, 10 meses
Puntos: 1
Respuesta: relacionar columnas es una tabla

A OK ya entendí estas haciendo un iner join a la misma tabla pero con las columnas a relacionar
y una pregunta esto por *-*- WHERE u1.cargo_jefe <> 0; *-*-
y funciono bien gracias

Etiquetas: campo, columnas, relacionar, 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 09:49.